我目前正在使用Codecademy学习PHP,我在课程中遇到一个错误,我不知道为什么。我收到此错误Undefined variable: name (line 21)Woof, woof! !
。
这是我的代码:
<?php
class Dog {
public $numLegs = 4;
public $name;
public function __construct($name){
$this->name = $name;
}
public function bark(){
return "Woof!";
}
public function greet(){
return "Woof, woof! ".$name."!";
}
}
$dog1 = new Dog("Barker");
$dog2 = new Dog("Amigo");
$dog1->bark();
echo $dog2->greet();
?>
这是本课http://www.codecademy.com/courses/web-beginner-en-ZQQ64/0/8#。谢谢你的帮助。 :)
答案 0 :(得分:6)
要引用类字段,您需要使用$this->
限定字段名称。所以这一行:
return "Woof, woof! ".$name."!";
应该是这样的:
return "Woof, woof! ".$this->name."!";
答案 1 :(得分:3)
它告诉你 - 在第21行,$name
未定义。你是说$this->name
吗?