1

我在调用未定义变量的$dog2方法时显示错误greet(),但我不明白我在哪里犯了错误。请帮我 :)

 <?php

        class Dog{

            public $numLegs=4;

            public $name;

            public function __construct($name){

                $this->name=$name;

            }

            public function bark(){

                return "woof";

            }

            public function greet(){

                return $name." is very beatifull dog hmmm";

            }

        }

        $dog1= new Dog("Barker");

        $dog2= new Dog("Amigo");

        echo $dog1->bark();

        echo $dog2->greet();


    ?>
4

1 回答 1

1

你不能像$name你必须使用的 那样直接访问名称$this->name

更改以下行

 return $this->name." is very beatifull dog hmmm";

$this->name指当前类的变量名,使用时$this->name,访问的是当前对象名name的属性。

于 2013-10-17T06:20:23.077 回答