3

我试图根据我的条件从表中获取行。我的代码:

$conditions = array(
  'id' => array ('148028','118508')
);

$criteria = new CDbCriteria();
foreach($conditions as $key => $values){
  $criteria->addInCondition($key, $values);
}
if(!is_null($limit)) $criteria->limit = $limit;

$rows = Item::model()->findAll($criteria);

这些行存在,但结果为空。绑定参数存在于标准对象中。

日志看起来像:

system.db.CDbCommand.query(SELECT * FROM `items` `t` WHERE id IN (:ycp0, :ycp1) LIMIT 2)

我认为,标准中的参数不会绑定到查询。

我的代码对吗?

4

2 回答 2

1

尝试按照这个

$criteria->addInCondition('id', array ('148028','118508'));
于 2012-11-26T13:34:31.673 回答
0

尝试这个,
$criteria->addInCondition($key, $values,'OR');

其中 $key - 字段名称,$values - 参数数组

于 2015-01-21T07:10:03.433 回答