所以我在PHP类中有一个函数,我想为另一个类(扩展类)修改该函数的版本。
我是否只需在扩展类中修改我的类?我如何在扩展类中使用不同的函数?
答案 0 :(得分:6)
您可以覆盖子类中的方法,如下所示:
<?php
class A {
public function printText($param) {
echo 'foo';
}
}
class B extends A {
public function printText($param) {
// Optional: This will call the printText method from the parent class A
parent::printText($param);
echo 'bar';
}
}
$instanceA = new A();
$instanceA->printText('sampleArg'); // Result: foo
$instanceB = new B();
$instanceB->printText('sampleArg'); // Result: foobar
/* EOF */
重要的是,被覆盖的方法与父类方法具有相同数量的参数,否则会出现PHP错误。