Phalcon PHP扩展并覆盖"更新"和"插入"功能

时间:2014-05-23 00:09:51

标签: php mysql class pdo phalcon

我想在Phalcon PHP中实现我自己的数据库方言。我想扩展和覆盖已经为PDO保留的一些函数。这就是我想要做的事情:

class DB extends \Phalcon\Db\Adapter\Pdo\Mysql{
    function _construct($connection_variables=array())
    {
        parent::_construct($connection_variables);
    }

    function update($table="",$variables="")
    {
        parent::execute($query);
    }
}

所以,当我试图调用模型时:

$this->db->update('test',array('id'=>'1'));

它给出了一个错误陈述:

Fatal error: Declaration of Libraries\DB::update() must be compatible with Phalcon\Db\AdapterInterface::update($table, $fields, $values, $whereCondition = NULL, $dataTypes = NULL) in ..... 

如何覆盖更新和插入功能? 感谢

1 个答案:

答案 0 :(得分:1)

您的update方法必须与Phalcon\Db\AdapterInterface界面中声明的方法匹配,它应该是:

function update($table, $fields, $values, $whereCondition = NULL, $dataTypes = NULL)
{
    // ...
}

而不是:

function update($table="",$variables="")
{
    // ...
}

方法signature/header必须与interface中的方法相同。