同じデータベースフィールドに表示されるいくつかのキーワードを検索する必要があります。たとえば、フィールドに「茶色のキツネが怠惰な犬の上を飛ぶ」という文字が含まれていて、誰かが「クイック」と「犬」を検索した場合、これは一致として返されます。Yii2の同じフィールドにある複数のキーワードを検索
ので、私は検索フィールドを取るとスペースに基づいて、配列にそれを爆発:その後、私は私がループにこれを投げるだろうと思って
$terms = explode(" ", $this->search_term);
:
foreach ($terms as $key) {
$query->andFilterWhere([
'or',
[ 'like', 'item.name', $key ],
]);
}
しかし、このそれは非常にエレガントではありません。