如何创建常见的Zend选择对象?

时间:2014-12-30 10:27:45

标签: zend-framework

我想为Zend的select对象创建一个公共类,然后想要通过添加额外的必填字段,连接,轮组,顺序,限制等来使用该类的方法。

我在这里只描述我的想法。

class Model_Commonselect
{
     public function Commonselect()
     {
          //Zend select object with preset from table and join
          //return common select object
     }
}

从上面的结构我想在基函数中设置一些预先需要的FROMJOIN,然后想要返回那个select对象,并进一步想要添加额外的{{1} }},JOINWHEREORDER等。

有人可以建议使用这种结构吗?

1 个答案:

答案 0 :(得分:0)

zend已经有了

的结构
class Application_Model_DbTable_City extends Zend_Db_Table_Abstract {
    protected $_name = 'city';// this is the tables name

    public function findByName($name){
        $select = $this->select()->where('name = ?',$name);
        return $this->fetchRow($select);
    }
} 

更新:@NullPointer

这只是一个示例代码,您可以使用Zend_Db_Table_Abstract类作为基础并从头开始创建自己的代码,或者只是覆盖其select()方法并创建自己的代码。

class Application_Model_MySelect extends Zend_Db_Table_Abstract
{
    public function mySelect()
    {
        $select = parent::select(false);
        $select
            ->from('my table')
            ->join('some other table')
            ->where('something');

        return $select;
    }
}