(PHP 4, PHP 5, PHP 7, PHP 8)
strcspn — Encontra o tamanho do segmento inicial que não corresponde à máscara
Retorna o tamanho do segmento inicial de string
que não contiver nenhum dos caracteres definidos no parâmetro characters
.
Se offset
e length
forem omitidos, então tudo da string
será examinado. Se forem incluídos, então o efeito será o mesmo que chamar strcspn(substr($string, $offset, $length), $characters)
(consulte substr para mais informações).
string
O string a ser examinado.
characters
A string contendo os caracteres não permitidos.
offset
A posição na string
para iniciar a pesquisa.
Se offset
for informado e não negativo, a função strcspn() começará a examinar a string
na posição offset
. Por exemplo, na string 'abcdef
', o caractere na posição 0
é 'a
', na posição 2
é 'c
', e assim por diante.
Se offset
for informado e negativo, a função strcspn() começará a examinar a string
na posição offset
a partir do final da string
.
length
O tamanho do segmento da string
a ser examinado.
Se length
for informado e não negativo, a string
será examinada pelo número de caracteres em length
a partir da posição inicial.
Se length
for informado e negativo, a string
será examinada a partir da posição inicial até o número de caracteres informado em length
contados a partir do final da string
.
Retorna o tamanho do segmento inicial da string
que consiste inteiramente de caracteres que não estejam em characters
.
Nota:
Quando
offset
estiver definido, o tamanho retornado é contado a partir deste posição, e não a partir do início dastring
.
Versão | Descrição |
---|---|
8.0.0 | length agora pode ser nulo. |
Exemplo #1 Exemplo de strcspn()
<?php
$a = strcspn('abcd', 'apple');
$b = strcspn('abcd', 'banana');
$c = strcspn('hello', 'l');
$d = strcspn('hello', 'world');
$e = strcspn('abcdhelloabcd', 'abcd', -9);
$f = strcspn('abcdhelloabcd', 'abcd', -9, -5);
var_dump($a);
var_dump($b);
var_dump($c);
var_dump($d);
var_dump($e);
var_dump($f);
?>
O exemplo acima produzirá:
int(0) int(0) int(2) int(2) int(5) int(4)
Nota: Esta função é compatível com dados binários.