Maison > Article > développement back-end > PHP面向对象之方法重写
风来了.fox
因用到分表所以需要方法重写
报错:
Declaration of ..... should be compatible with .....
请用如下方式解决
class Model { /**设置分表名 * @param int $tableNum UID或表序号 * @param int $num 位数 * @return $this */ public function tableSplit($tableNum=0,$num=2){ $this->table($this->getTableNameSplit($tableNum,$num)); return $this; } } class StockFlowModel extends Model { /**设置分表名 * @param int $tableNum UID或表序号 * @param int $num * @return $this */ public function tableSplit($tableNum=0,$num=4) { if(empty($tableNum)){ $tableNum=date_time_format(DATE_TIME, 'ym'); } parent::tableSplit($tableNum, $num); return $this; } }
方法覆盖时,与父类方法相同的约定,参数名称要一直,属性覆盖也要一致。
调用父类方法时,用parent::方法调用
版权声明:本文为博主原创文章,未经博主允许不得转载。
以上就介绍了PHP面向对象之方法重写,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。