Я попытался получить строки из таблицы в соответствии с моими условиями. Мой код:
$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)
Я думаю, что параметры в критериях не привязаны к запросу.
Правильно ли мой код?
Попробуйте следовать этому
$criteria->addInCondition('id', array ('148028','118508'));
Попробуй это,
$criteria->addInCondition($key, $values,'OR');
где $ key – имя поля, $ values - массив параметров