2016-09-03 9 views

答えて

4

のようなクエリを結果

where name like 'value%' 

Table::find()->filterWhere(['like', 'name' , $_GET['q'].'%' ]) 
     ->all(); 

ようになり片側%like状態でyii2にWHERE条件を追加する場所のような追加に同様の条件でカスタムを使用するには、第3オペランドをfalseに設定します。

Table::find()->where(['like', 'name', $_GET['q'] . '%', false]); 
から

時々、自分で 一致する値にパーセント文字を追加することも、あなたはとても を行うには偽の第三のオペランドを供給することができます。たとえば、['like'、 'name'、 '%tester'、false]という名前は、 LIKE '%tester'という名前を生成します。

+0

なぜ私は$ _GET ['q']をパラメータにバインドします は自動エスケープパラメータではありませんか? これを行うにはどうすればいいですか? –

+0

はい、演算子形式は入力を自動的にエスケープします。 – nadar

関連する問題