strspn
(PHP 4, PHP 5, PHP 7)
strspn — Возвращает длину участка в начале строки, полностью соответствующего маске
Описание
$string
, string $characters
, int $offset = 0
, int|null $length = null
) : int
Возвращает длину участка от начала строки string,
содержащий только символы из characters.
Если параметры offset и length
не указаны, то будет исследована вся строка string.
Если они указаны, то эффект будет аналогичен вызову
strspn(substr($subject, $start, $length), $mask)
(подробнее смотрите функцию substr).
Строка кода:
<?php
$var = strspn("42 - ответ на 128 вопрос.", "1234567890");
?>
2 переменной $var,
так как "42" - это начальный участок строки string,
состоящий только из символов "1234567890".
Список параметров
-
string -
Исследуемая строка.
-
characters -
Список из разрешенных символов.
-
offset -
Позиция начала поиска в
subject.Если
offsetуказан и неотрицателен, то strspn() начнет искать в строкеstring, начиная с позицииoffset. К примеру, в строке 'abcdef', символом с позицией0является 'a', символом с позицией2является 'c' и т.д.Если
offsetуказан и отрицателен, то strspn() начнет поиск в строкеstringс позиции, отстоящей наoffsetсимволов с концаstring. -
length -
Длина исследуемого фрагмента
string.Если
lengthуказан и неотрицателен, то строкаstringбудет исследована в течениеlengthпосле стартовой позиции.Если
lengthуказан и отрицателен, то строкаstringбудет исследована начиная со стартовой позиции до позиции, отстоящей наlengthсимволов с концаstring.
Возвращаемые значения
Возвращает длину первого участка string,
состоящего целиком из символов в characters.
Замечание:
Когда
offsetуказан, возращаемая длина строки определяется, начиная с этой позиции, а не с начала строкиstring.
Список изменений
| Версия | Описание |
|---|---|
| 8.0.0 |
length теперь допускает значение null.
|
Примеры
Пример #1 Пример использования strspn()
<?php
// subject не начинается ни из какого символа из mask
var_dump(strspn("foo", "o"));
// проверить два символа из subject, начиная с позиции 1
var_dump(strspn("foo", "o", 1, 2));
// проверить один символ из subject, начиная с позиции 1
var_dump(strspn("foo", "o", 1, 1));
?>
Результат выполнения данного примера:
int(0) int(2) int(1)
Примечания
Замечание: Эта функция безопасна для обработки данных в двоичной форме.