2016-06-17 29 views
0

私は今、成功しなくてもLIKE演算子を使用しなければならない単純なクエリを作成しようとしているので、2時間以上苦労しています。PHP ActiveRecord

最初の試みは、以下のコードで私のモデルを使用していた:

return self::find('all', ['conditions' => "`code` LIKE ?", "'%$searchString%'"]); 

手動でクエリを実行すると、私に少なくとも二つのレコードを与えたときに上記のコードはその間何も返さない:

SELECT * FROM `vehicle_models` WHERE `code` LIKE "%AUD%" 

私は次のように成功しないとSQLBuilderを使用することにも頼っています。

$conn = ConnectionManager::get_connection("default"); 
$builder = new SQLBuilder($conn, static::$table_name); 

echo $builder->where('`code` LIKE ?', "'%$searchString%'"); 

//エコー出力:SELECT * FROM vehicle_models WHERE code LIKE?

PHP ActiveRecordライブラリでLIKE演算子を使用するための2つのオプションには、どのような欠点がありますか?

答えて

0

これはあなたのためにそれを行う必要があります。

return self::all(array(
    'conditions' => array(
     "code LIKE %?%", 
     $searchString 
     ); 
);