在臭名昭著的php yii框架中,如何使用模型的单个实例在一个表中找到多个记录?
我有一个日期栏:
[dates]
2011-06-29
2011-06-30
2011-07-01
2011-07-02
2011-07-03
假设我有一个搜索条件,它是一个日期范围:
start search from: 2011-06-29
end search at: 2011-07-03
并获取所有这些记录进行比较,或者告诉用户这些记录已经存在于表中。
如何用yii框架实现这一点?它是由cactiverecord、cdbcriteria等内置类驱动的?
最佳答案
假设您有一个名为CActiveRecord
的YourModel
子类,并且数据库表有一个名为dates
的列,那么您将执行以下操作:
$models = YourModel::model()->findAll(array(
'condition' => 'dates > :minDate AND dates < :maxDate',
'params' => array(':minDate' => '2011-06-29', ':maxDate' => '2011-07-03'),
));
对
findAll
的参数也可以是CDbCriteria
对象;您将设置与上述示例中的数组关键字相同的属性。