strspn
(PHP 4, PHP 5, PHP 7, PHP 8)
strspn — Encontra o comprimento do segmento inicial de uma string composta totalmente de caracteres contidos em uma máscara informada
Descrição
Encontra o comprimento do segmento inicial da string
que contenha somente caracteres contidos em characters
.
Se offset
e length
forem omitidos, então toda a string
será
examinada. Se forem incluídos, o efeito será o mesmo que
chamar strspn(substr($string, $offset, $length),
$characters)
(consulte substr
para mais informações).
A linha de código:
<?php
$var = strspn("42 is the answer to the 128th question.", "1234567890");
?>
2
para $var,
porque a string "42" é o segmento inicial
de string
que consiste somente de caracteres
contidos em "1234567890".
Parâmetros
string
-
A primeira a ser examinada.
characters
-
A lista de caracteres permitidos.
offset
-
A posição na
string
para iniciar a pesquisa.Se
offset
for informado e não negativo, a função strspn() começará a examinar astring
na posiçãooffset
. Por exemplo, na string 'abcdef
', o caractere na posição0
é 'a
', na posição2
é 'c
', e assim por diante.Se
offset
for informado e negativo, a função strspn() começará a examinar astring
na posiçãooffset
a partir do final dastring
. length
-
O tamanho do segmento da
string
a ser examinado.Se
length
for informado e não negativo, astring
será examinada pelo número de caracteres emlength
a partir da posição inicial.Se
length
for informado e negativo, astring
será examinada a partir da posição inicial até o número de caracteres informado emlength
contados a partir do final dastring
.
Valor Retornado
Retorna o comprimento do segmento inicial de string
que consistir inteiramente dos caracteres definidos em characters
.
Note:
Quando o parâmetro
offset
estiver definido, o comprimento retornado é contado iniciando-se desta posição, não do início dastring
.
Registro de Alterações
Versão | Descrição |
---|---|
8.0.0 |
length agora pode ser nulo.
|
Exemplos
Example #1 strspn() example
<?php
// string não começa com nenhum dos caracteres da máscara
var_dump(strspn("foo", "o"));
// examina dois caracteres da string iniciando na posição 1
var_dump(strspn("foo", "o", 1, 2));
// examina um caractere da string iniciando na posição 1
var_dump(strspn("foo", "o", 1, 1));
?>
O exemplo acima produzirá:
int(0) int(2) int(1)
Notas
Note: Esta função é compatível com dados binários.