在PHP中,可以通过继承和方法重写来实现多态。具体来说,如果一个类继承自另一个类,并重写了父类的某个方法,在子类中创建的对象调用该方法时,会根据对象的类型自动调用相应的方法。以下是一个简单的示例代码:
class Animal {
public function speak() {
echo "I am an animal.";
}
}
class Dog extends Animal {
public function speak() {
echo "I am a dog.";
}
}
class Cat extends Animal {
public function speak() {
echo "I am a cat.";
}
}
$animals = array(new Animal(), new Dog(), new Cat());
foreach ($animals as $animal) {
$animal->speak();
echo "<br>";
}
输出结果为:
I am an animal.
I am a dog.
I am a cat.
可以看到,不同类型的对象调用同一个方法时,输出的结果不同,这就是多态的体现。