我一直在尝试使用 PHP 来探索它的潜力,所以我尝试看看我是否可以实现一个二叉树结构。这是代码:
class Node{
public $leftNode;
public $rightNode;
public $value;
public function Node($value){
$this->value = $value;
}
}
class binTree{
public function inserter(Node $node, $value){
if($value < $node->value){
if($node->leftNode != null){
inserter($node, $value);
}
else{
$node->leftNode = new Node($value);
}
}
else if($value > $node->value){
if($node->rightNode != null){
inserter($node, $value);
}
else{
$node->rightNode = new Node($value);
}
}
}
}
现在由于某种原因,当我尝试在其自身内部调用插入器函数时(即插入器($node,$value),我收到此错误:Fatal error: Call to undefined function inserter().
所以我尝试通过 $this 甚至 binTree:: 引用它,但没有运气。我得到了Fatal error: Using $this when not in object context
和Fatal error: Allowed memory size of 134217728 bytes exhausted
错误分别。谁能解释发生了什么?