PHP中带有类的未定义变量

时间:2013-06-19 16:31:28

标签: php

我目前正在使用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#。谢谢你的帮助。 :)

2 个答案:

答案 0 :(得分:6)

要引用类字段,您需要使用$this->限定字段名称。所以这一行:

return "Woof, woof! ".$name."!";

应该是这样的:

return "Woof, woof! ".$this->name."!";

答案 1 :(得分:3)

它告诉你 - 在第21行,$name未定义。你是说$this->name吗?