(PHP 4, PHP 5, PHP 7, PHP 8)
substr_count — Возвращает число вхождений подстроки
substr_count() возвращает число вхождений подстроки needle
в строку haystack
. Заметьте, что параметр needle
чувствителен к регистру.
Замечание:
Эта функция не подсчитывает перекрывающиеся подстроки. Смотрите пример ниже!
haystack
Строка, в которой ведётся поиск
needle
Искомая подстрока
offset
Смещение начала отсчёта. Если задано отрицательное значение, отсчёт позиции будет произведён с конца строки.
length
Максимальная длина строки, в которой будет производится поиск подстроки после указанного смещения. Если сумма смещения и максимальной длины будет больше длины haystack
, то будет выведено предупреждение. Отрицательное значение будет отсчитываться с конца haystack
.
Эта функция возвращает целое число (int).
Версия | Описание |
---|---|
8.0.0 | length теперь допускает значение null. |
7.1.0 | Добавлена поддержка отрицательных значений offset и length . length теперь также может быть 0 . |
Пример #1 Пример использования substr_count()
<?php
$text = 'This is a test';
echo strlen($text); // 14
echo substr_count($text, 'is'); // 2
// строка уменьшается до 's is a test', поэтому вывод будет 1
echo substr_count($text, 'is', 3);
// текст уменьшается до 's i', поэтому вывод будет 0
echo substr_count($text, 'is', 3, 3);
// генерирует предупреждение, так как 5+10 > 14
echo substr_count($text, 'is', 5, 10);
// выводит только 1, т.к. перекрывающиеся подстроки не учитываются
$text2 = 'gcdgcdgcd';
echo substr_count($text2, 'gcdgcd');
?>