Методы PHP для проверки, содержит ли строка какое-либо значение из массива

Методы:

  1. Использование цикла по каждому элементу:
    Один простой метод — перебрать каждый элемент массива и проверить, существует ли он в строке. Вот пример:
function containsFromArray($string, $array) {
    foreach ($array as $value) {
        if (strpos($string, $value) !== false) {
            return true;
        }
    }
    return false;
}
// Usage:
$array = ['apple', 'banana', 'orange'];
$string = 'I like bananas';
if (containsFromArray($string, $array)) {
    echo "The string contains a value from the array.";
} else {
    echo "The string does not contain any value from the array.";
}
  1. Использование функции array_intersect:
    Функция array_intersectможет использоваться для поиска общих элементов между двумя массивами. Сравнивая результат с исходным массивом, мы можем определить, совпадают ли какие-либо значения. Вот пример:
function containsFromArray($string, $array) {
    $intersect = array_intersect($array, explode(' ', $string));
    return !empty($intersect);
}
// Usage:
$array = ['apple', 'banana', 'orange'];
$string = 'I like bananas';
if (containsFromArray($string, $array)) {
    echo "The string contains a value from the array.";
} else {
    echo "The string does not contain any value from the array.";
}
  1. Использование регулярных выражений.
    Регулярные выражения предоставляют мощные возможности сопоставления с образцом. Мы можем создать регулярное выражение, которое соответствует любому значению из массива, а затем использовать функцию preg_match, чтобы проверить совпадение строки. Вот пример:
function containsFromArray($string, $array) {
    $pattern = '/' . implode('|', array_map('preg_quote', $array)) . '/';
    return preg_match($pattern, $string);
}
// Usage:
$array = ['apple', 'banana', 'orange'];
$string = 'I like bananas';
if (containsFromArray($string, $array)) {
    echo "The string contains a value from the array.";
} else {
    echo "The string does not contain any value from the array.";
}