Select Zend Db with array


Select Zend Db with array

使用Zend通过数组选择多行的正确语法是什么?取所有名称为$a OR $b等的数据,这取决于数组元素的个数。我想不出来.......

public function selectRow($array) 
{
    $data = $this->table->select()
                        ->where('name = ?', $array);
    return $this->table->fetchAll($data);
}

您必须使用IN clause。所以尝试,

$data = $this->table->select()
                    ->where('name IN (?)', $array);

您可以在Zend_Db_Select中使用orWhere()。检查手动Zend_Db_Select::where()。

public function selectRow($array) 
{
    $data = $this->table->select()
                        ->where('name = ?', $array)
                        ->orWhere('address = ?', $anotherarray);
    return $this->table->fetchAll($data);
}
  • 当where条件包含值数组
  • 时,最好使用INNOT IN