2009-10-26 54 views
0

我想使用数组来设置Zend数据库表的where参数。我想请按照文档中的例子:Zend数据库表在哪里条款

$select = $table->select()->where(array('bug_status = ?' => 'NEW')); 

我有一个继承Zend_Db_Table类一类,我试图选择喜欢的例子:

$select = $this->select()->where(array('FirstName = ?' => 'Ryan')); 

但我得到的是说“错误SQLSTATE [42S22]:未找到列:1054'where子句'中的未知列'Array'“。所以它不会将数组识别为数组,并尝试将其用作列名称。

关于这里发生了什么或我如何得到的任何想法在哪里接受数组?谢谢!

回答

4

正确的语法是where('FirstName = ?', 'Ryan')。我在源代码中找不到数组版本,所以我会说这是文档中的一个“错误”。

+0

http://framework.zend.com/issues/browse/ZF-8155 –

+1

你是对的。但是,您可以使用$ this - > _应用where数组,其中($ select,$ where);它需要像'不正确'的例子中的阵列设置,并正确应用(PS:抱歉2年的延迟:-) – Ryan