并且在 Yii 中有条件
And condition in Yii with condition
如何在 Yii 的 Mysql 中使用 AND。
我tried.Here是我的条件
$cid =$list['cid'];
$sid =$list['sid'];
$criteria = new CDbCriteria();
$con = 'cid=:cid';
$arr = array(':cid'=>$cid,);
if($sid!=null){
$con = $con.'AND sid=:sid';
array_push($arr, ':sid'=>$sid); //here i have error
}
$criteria->condition = $con;
$criteria->params = $arr;
$result = Product::model()->findAll($criteria);
有时候只有我有sid。我无法将条件推入数组。那么如何在 yii 中实现呢?
不是"array_push",试试这个:
$arr[':sid'] = $sid;
我会这么设计的
$cid =$list['cid'];
$sid =$list['sid'];
$criteria = new CDbCriteria();
$criteria->condition = 'cid=:cid';
$criteria->params = array(':cid'=>$cid,);
if($sid!=null){
$criteria->addCondition('sid=:sid');
$criteria->params[':sid'] = $sid; // or $criteria->params = array_merge($criteria->params, array(':sid'=>$sid));
}
$result = Product::model()->findAll($criteria);
如何在 Yii 的 Mysql 中使用 AND。
我tried.Here是我的条件
$cid =$list['cid'];
$sid =$list['sid'];
$criteria = new CDbCriteria();
$con = 'cid=:cid';
$arr = array(':cid'=>$cid,);
if($sid!=null){
$con = $con.'AND sid=:sid';
array_push($arr, ':sid'=>$sid); //here i have error
}
$criteria->condition = $con;
$criteria->params = $arr;
$result = Product::model()->findAll($criteria);
有时候只有我有sid。我无法将条件推入数组。那么如何在 yii 中实现呢?
不是"array_push",试试这个:
$arr[':sid'] = $sid;
我会这么设计的
$cid =$list['cid'];
$sid =$list['sid'];
$criteria = new CDbCriteria();
$criteria->condition = 'cid=:cid';
$criteria->params = array(':cid'=>$cid,);
if($sid!=null){
$criteria->addCondition('sid=:sid');
$criteria->params[':sid'] = $sid; // or $criteria->params = array_merge($criteria->params, array(':sid'=>$sid));
}
$result = Product::model()->findAll($criteria);