2011-08-30 87 views

回答

4

只需覆蓋Table類中的insert()update()方法。

例如:

<?php 
class ObjectNameTable extends Zend_Db_Table_Abstract { 
    protected $_name = 'table_name'; // table name 
    protected $_primary = 'id'; 

    public function insert(array $data) { 
     $data['added'] = date('Y-m-d H:i:s'); 
     return parent::insert($data); 
    } 

    public function update(array $data, $where) { 
     $data['updated'] = date('Y-m-d H:i:s'); 
     return parent::update($data, $where); 
    } 
} 

如果你想這樣做,你的所有的表對象,那麼你可以有一個基類,他們都繼承如:

<?php 
class BaseTable extends Zend_Db_Table_Abstract { 
    public function insert(array $data) { 
     $data['added'] = date('Y-m-d H:i:s'); 
     return parent::insert($data); 
    } 

    public function update(array $data, $where) { 
     $data['updated'] = date('Y-m-d H:i:s'); 
     return parent::update($data, $where); 
    } 
} 

再一類使用它:

<?php 
class ObjectNameTable extends BaseTable { 
    protected $_name = 'table_name'; // table name 
    protected $_primary = 'id'; 
}