Это ключевые слова
$keywords = ['html','css','js','php','yii2']
А это фильтр запроса Yii из модели
$query->orFilterWhere(["LIKE","skill_name",$val]);
И это дает следующие результаты
WHERE `skill_name` LIKE '%html%'
AND `skill_name` LIKE '%css%'
AND `skill_name` LIKE '%js%'
AND `skill_name` LIKE '%php%'
AND `skill_name` LIKE '%yii2%'
Я хочу этот запрос после того, как
WHERE `skill_name` LIKE '%html%'
OR `skill_name` LIKE '%css%'
OR `skill_name` LIKE '%js%'
OR `skill_name` LIKE '%php%'
OR `skill_name` LIKE '%yii2%'






Вам нужно использовать or like в таких случаях:
$query->andFilterWhere(['OR LIKE', 'skill_name', $val]);
См. https://www.yiiframework.com/doc/api/2.0/yii-db-queryinterface#where()-detail
or в orFilterWhere() определяет, как присоединить новое условие к существующим. Итак, если у вас есть:
$query->orFilterWhere('some condition 1')->orFilterWhere('some condition 2');
Это сгенерирует что-то вроде:
WHERE some condition 1 OR some condition 2
OR между состояниями происходит от orFilterWhere().
и $ val, вероятно, $ ключевые слова, которые вам не нужно использовать foreach
пожалуйста, выберите ответ, выделив немного времени в качестве доброго жеста по отношению к человеку, который помогает вам, уделяя вам немного своего времени, счастлив, ТАК :).