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 に答える