Метод containsAll
Статический метод containsAll класса Str предназначен для проверки наличия всех указанных подстрок в исходной строке. Первым параметром передаётся строка или объект Stringable, в которой производится поиск. Вторым параметром передаётся массив подстрок, наличие которых необходимо проверить. Метод возвращает true, если все подстроки найдены, и false, если хотя бы одна отсутствует. Поиск чувствителен к регистру.
Синтаксис
<?php
use Illuminate\Support\Str;
$res = Str::containsAll($haystack, $needles);
?>
Пример
Проверим, содержит ли строка все подстроки из массива:
<?php
use Illuminate\Support\Str;
$str = 'the quick brown fox jumps over the lazy dog';
$needles = ['quick', 'jumps', 'lazy'];
$res = Str::containsAll($str, $needles);
echo $res;
?>
Результат выполнения кода:
"1"
Метод вернул true, так как строка содержит все три указанные подстроки.
Пример
Проверим строку на наличие всех подстрок, где одна из них отсутствует:
<?php
use Illuminate\Support\Str;
$str = 'hello world from laravel';
$needles = ['world', 'php', 'laravel'];
$res = Str::containsAll($str, $needles);
echo $res;
?>
Результат выполнения кода:
""
Результат пустой, так как метод вернул false из-за отсутствия подстроки 'php'.
Пример
Метод учитывает регистр символов. Проверим это:
<?php
use Illuminate\Support\Str;
$str = 'Laravel is a PHP framework';
$needles = ['laravel', 'php'];
$res = Str::containsAll($str, $needles);
echo $res;
?>
Результат выполнения кода:
""
Метод вернул false, потому что 'Laravel' написано с заглавной буквы, а искомая подстрока 'laravel' - со строчной.
Пример
Метод также работает с объектами Stringable:
<?php
use Illuminate\Support\Str;
use Illuminate\Support\Stringable;
$str = new Stringable('code.mu is a great resource');
$needles = ['code', 'great', 'resource'];
$res = Str::containsAll($str, $needles);
echo $res;
?>
Результат выполнения кода:
"1"
Метод корректно обрабатывает объект Stringable и возвращает true.
Смотрите также
-
метод
contains,
который проверяет наличие хотя бы одной подстроки -
метод
startsWith,
который проверяет начало строки на совпадение -
метод
endsWith,
который проверяет окончание строки на совпадение -
метод
is,
который проверяет соответствие строки шаблону