2008-10-09 78 views
5

我可以重寫模型中的fetchall方法嗎?每次調用fetchAll時都需要檢查。模型擴展Zend_db_table_abstractZend Framework fetchAll

回答

9

要重寫此方法,您需要繼承Zend_Db_Table_Abstract。像這樣:

<?php 
abstract class My_Db_Table_Abstract extends Zend_Db_Table_Abstract 
{ 
    ... 

    public function fetchAll($where, $order) 
    { 
     ... 
    } 

    ... 
} 

然後確保您的模型擴展My_Db_Table_Abstract代替。這樣,您將始終繼承您重寫的fetchAll方法。

+0

既然你把它命名爲`Abstract`,你可能希望它是一個`抽象類`。 – chelmertz 2009-11-20 01:52:46

0

是的。只需在模型中定義一個與Zend_db_table_abstract方法(即相同輸入/輸出)相同構造的新fetchAll()方法,然後在方法調用父方法結束時使用:parent :: fetchAll($ params)

Andrew