使用臭名昭着的CActiveRecord在Yii Framework中一次查找多条记录?

met*_*rce 3 php search activerecord date yii

如何在臭名昭着的Yii Framework for PHP中使用单个模型实例在表中找到多条记录?

我有一个日期栏:

[dates]
2011-06-29
2011-06-30
2011-07-01
2011-07-02
2011-07-03
Run Code Online (Sandbox Code Playgroud)

假设我有一个搜索条件,女巫是一个日期范围:

start search from: 2011-06-29
end search at:     2011-07-03
Run Code Online (Sandbox Code Playgroud)

并抓住所有这些记录进行比较,或者告诉用户这些记录已存在于表中.

如何通过Yii Framework实现这一目标,使用它的CActiveRecord,CDbCriteria等内置类?

Jon*_*Jon 7

假设您有一个CActiveRecord名为的子类YourModel,并且数据库表有一个名为的列dates,您将执行以下操作:

$models = YourModel::model()->findAll(array(
    'condition' => 'dates > :minDate AND dates < :maxDate',
    'params' => array(':minDate' => '2011-06-29', ':maxDate' => '2011-07-03'),
));
Run Code Online (Sandbox Code Playgroud)

参数to findAll也可以是一个CDbCriteria对象; 您将设置与上例中的数组键名称相同的属性.