strspn
strspn
(PHP 4, PHP 5, PHP 7)
strspn - 查找完全由包含在给定掩码内的字符组成的字符串的初始段的长度。
描述
int strspn ( string $subject , string $mask [, int $start [, int $length ]] )
查找仅包含来自 mask 的字符的主题的初始片段的长度。
如果start
和length
被省略,那么所有的subject
都将被检查。如果包含它们,则效果将与调用strspn(substr($ subject,$ start,$ length),$ mask)相同
(有关更多信息,请参见substr)。
代码行:
<?php
$var = strspn("42 is the answer to the 128th question.", "1234567890"
?>
将分配2
给$ var,因为字符串“42
”是仅由“12
34567890”中包含的字符组成的subject
初始段。
参数
subject
要检查的字符串。
mask
允许的字符列表。
start
subject
开始搜索的位置。
如果开始并且是非负数,则strspn()将开始检查在开始位置处的主体。 例如,在字符串'abcdef'中,位置0处的字符是'a',位置2处的字符是'c',等等。
如果开始给出并且是负数,则strspn()将开始检查从主题末尾开始的第一个位置处的主题。
length
subject
要检查的段的长度。
如果长度为非负值,则将在开始位置之后检查主题长度字符。
如果长度为负值,则将从开始位置开始检查主题,直到主题末尾的长度字符。
返回值
返回完全由掩码中的字符组成的主体的初始片段的长度。
注意
:start
设置参数时,返回的长度从该位置开始计数,而不是从subject
开始计数。
例子
示例#1 strspn()示例
<?php
// subject does not start with any characters from mask
var_dump(strspn("foo", "o")
// examine two characters from subject starting at offset 1
var_dump(strspn("foo", "o", 1, 2)
// examine one character from subject starting at offset 1
var_dump(strspn("foo", "o", 1, 1)
?>
上面的例子将输出:
int(0)
int(2)
int(1)
注意
注意
:此功能是二进制安全的。
扩展内容
- strcspn() - 查找初始段不匹配掩码的长度
← strrpos
strstr →