首頁  >  文章  >  後端開發  >  PHP物件導向方法重寫

PHP物件導向方法重寫

WBOY
WBOY原創
2016-07-30 13:29:431523瀏覽

風來了.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教程有興趣的朋友有所幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn