Yii中$condition
和$param
in的使用说明findByAttributes
在大多数情况下,这就是我使用的方式findByAttributes
Person::model()->findByAttributes(array('first_name'=>$firstName,'last_name'=>$lastName));
Yii中$condition
和$param
in的使用说明findByAttributes
在大多数情况下,这就是我使用的方式findByAttributes
Person::model()->findByAttributes(array('first_name'=>$firstName,'last_name'=>$lastName));
从这个线程复制http://www.yiiframework.com/forum/index.php/topic/21178-findbyattributes-example/ 解释你想要做什么以及你的错误在哪里。尝试阅读文档http://www.yiiframework.com/doc/api/1.1/CActiveRecord#findByAttributes-detail
当您使用模型的属性在 Yii 的 CActiveRecord 中进行查找时,您很可能会通过某种等式查找。
Person::model()->findByAttributes(array(
'first_name' => $firstName,
'last_name' => $lastName,
));
在英语中,这翻译为“给我找一个姓氏为 $lastname 且名字为 $firstname 的人”。但这是一个不好的例子。考虑以下。
Person::model()->findByAttributes(array(
'age' => 18,
));
这是一个更好的例子,用英语翻译成“把所有 18 岁的孩子都给我找来”(即“哪里” age = 18
)。这可以用这样的条件重写
Person::model()->findByAttributes(array(
'condition' => 'age = :age',
'params' => array(
':age' => 18,
),
));
到目前为止,似乎没有什么好处。但是这样的表达式使我们能够使用更多的布尔运算符。例如...
Person::model()->findByAttributes(array(
'condition' => 'age < :age',
'params' => array(
':age' => 18,
),
));
...现在可以帮助我们找到所有低于特定年龄的人。
$conditions
使用and查询可以随心所欲地增长$params
,但使用常规方法,您只能使用赋值查询。