Nie, taká funkcia nie je, ale môžeš použiť napr. preg_match
Kód:
$input = 'nieco string a auto';
$arr = ['nieco', 'dalsie', 'slovo', 'auto'];
if(preg_match('#'.implode('|', $arr).'#', $input)) {
//je to tam
}
Výsledkom s implode bude regex
#nieco|dalsie|slovo|auto#Poprípade ak chceš len celé slová, tak niečo takéto
Kód:
$arr = ['nieco', 'dalsie', 'slovo', 'auto'];
$input = ' ' . $input . ' ';
if(preg_match('#\s('.implode('|', $arr).')\s#', $input)) {
//je to tam
}
regex v tomto prípade bude
#\s(nieco|dalsie|slovo|auto)\s# (a to pridanie medzier na začiatok a koniec inputu vyrieši začiatok a koniec stringu).
Ďalší spôsob ako na to je cez explode
Kód:
$input = 'nieco string a auto';
$arr = ['nieco', 'dalsie', 'slovo', 'auto'];
if(count(array_intersect($arr, explode(' ', $input))) {
//je to tam
}
kde explode rozdelí celý input na pole slov podľa medzier a array_intersect zistí prienik polí.
Ďalšia možnosť je jednoducho jeden cyklus a v ňom strpos.