次のクラスがあり、連鎖メソッドを実装したいと考えています。私はちょっと自分自身を教えているので、連鎖をテストするのはいいと思いました。しかし、それはうまくいきませんでした。そのためには何が必要でしょうか
echo $animal->name.' says'.$animal->speak()->likes()."<br />";
ここに私の完全なコードがあります
<?php
class Animal{
var $name;
function __construct(){
$this->name = $name;
}
}
class Dog extends Animal{
public function speak(){
return "Woof Woof";
}
public function likes(){
return "steaks";
}
}
class Cat extends Animal{
public function speak(){
return "Meow Meow";
}
public function likes(){
return "tuna";
}
}
$animals = array(new Dog('skippy'), new Cat('snowball'));
foreach($animals as $animal){
echo $animal->name.' says'.$animal->speak()->likes()."<br />";
}
?>