substr_count

(PHP 4, PHP 5, PHP 7, PHP 8)

substr_countВозвращает число вхождений подстроки

Описание

substr_count(
    string$haystack,
    string$needle,
    int$offset = 0,
    ?int$length = null
): int

substr_count() возвращает число вхождений подстроки needle в строку haystack. Заметьте, что параметр needle чувствителен к регистру.

Замечание:

Эта функция не подсчитывает перекрывающиеся подстроки. Смотрите пример ниже!

Список параметров

haystack

Строка, в которой ведётся поиск

needle

Искомая подстрока

offset

Смещение начала отсчёта. Если задано отрицательное значение, отсчёт позиции будет произведён с конца строки.

length

Максимальная длина строки, в которой будет производится поиск подстроки после указанного смещения. Если сумма смещения и максимальной длины будет больше длины haystack, то будет выведено предупреждение. Отрицательное значение будет отсчитываться с конца haystack.

Возвращаемые значения

Эта функция возвращает целое число (int).

Список изменений

ВерсияОписание
8.0.0length теперь допускает значение 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');
?>

Смотрите также

  • count_chars() - Возвращает информацию о символах, входящих в строку
  • strpos() - Возвращает позицию первого вхождения подстроки
  • substr() - Возвращает подстроку
  • strstr() - Находит первое вхождение подстроки
To Top