27
loading...
This website collects cookies to deliver better user experience
class John
{
public function bark()
{
echo 'Woef!';
}
}
class Jane
{
public function meow()
{
echo 'Meow!';
}
}
interface Dog
{
public function eat(string $food);
}
interface Cat
{
public function eat(string $food);
}
implements
to our classes:class John implements Dog
{
public function bark()
{
echo 'Woef!';
}
public function eat(string $food)
{
echo sprintf('I love eating ', $food);
}
}
class Jane implements Cat
{
public function meow()
{
echo 'Meow!';
}
public function eat(string $food)
{
echo sprintf('I love eating ', $food);
}
}
$john = new John;
if ($john instaceof Dog) {
echo $john->eat("bones"); // I love eating bones!
}
public function feedDog(Dog $dog)
{
$dog->eat('bones');
}
feedDog($john); // I love eating bones!