public function search() { $criteria = new CDbCriteria; if(!isset($_GET['Record_sort'])){ $criteria->order = 'record_order ASC' ; } $criteria->compare('record_id', $this->record_id, true); $criteria->compare('record_display', $this->record_display, true); $criteria->compare('record_series', $this->record_series, true); return new CActiveDataProvider($this, array( 'criteria' => $criteria, )); }
$criteria->compare('record_series', $this->record_series, true);这句有什么用?$criteria->compare('record_series', 'A', true); 就是where 'record_series'='A' $criteria->compare('record_series', $this->record_series, true) 加这句和没加这句,显示出的结果是一样的
$criteria->compare('record_id', $this->record_id, true)
$criteria->compare('record_display') , $this->record_display, true);
$criteria->compare('record_series', $this->record_series, true);
は、次のような条件式を生成します
'%$this - >record_id%' と Record_display like '%$this->record_display%' および Record_series like '%$this->record_series%'
true として指定した 3 番目のパラメータはファジー クエリであるため (デフォルトは false です)精度クエリ)
4 番目のパラメータのデフォルトは と
なぜこのように書くかについては、それはあなたのビジネス上のニーズであり、他の人は何も言えません