(PHP 4, PHP 5, PHP 7)
strspn — Averigua la longitud del segmento inicial de un string que consista únicamente en caracteres contenidos dentro de una máscara dada.
$subject
, string $mask
[, int $start
[, int $length
]] ) : int
Encuentra la longitud del segmento inicial de subject
que contiene solamente caracteres de mask.
Si start y length
son omitidos, entonces la totalidad de subject será
examinada. Si son incluidos, entonces el efecto será el mismo que
llamando strspn(substr($subject, $start, $length),
$mask) (ver substr
para más información).
La línea de código:
<?php
$var = strspn("42 is the answer to the 128th question.", "1234567890");
?>
subject que consiste solamente en caracteres
contenidos dentro de "1234567890".
subjectEl string a examinar.
maskLa lista de caracteres permitidos.
start
La posición en subject donde
iniciar la búsqueda.
Si start es dado y no es negativo,
entonces strspn() comenzará a
examinar a subject en
la posición startésima. Por ejemplo, en
el string 'abcdef', el caracter en la
posición 0 es 'a', el
caracter en la posición 2 es
'c' y así sucesivamente.
Si start es dado y es negativo,
entonces strspn() comenzará a
examinar subject desde
la startésima posición desde el final
de subject.
length
La longitud del segmento de subject
a examinar.
Si se proporciona length y no es negativo,
entonces subject será examinado
por el número length de caracteres después de la posición
de inicio.
Si se proporciona length y es negativo,
entonces subject sera examinado desde
la posición de inicio hasta el número length de caracteres
desde el final de subject.
Devuelve la longitud del segmento inicial de subject
el cual enteramente consiste en caracteres en mask.
Nota:
Cuando se establece el parámetro
start, la longitud devuelta se cuenta a partir de esta posición, no desde el comienzo desubject.
Ejemplo #1 Ejemplo de strspn()
<?php
// subject no inicia con ningún caracter de mask
var_dump(strspn("foo", "o"));
// examina dos caracteres de subject iniciando en el offset 1
var_dump(strspn("foo", "o", 1, 2));
// examina un caracter de subject iniciando en el offset 1
var_dump(strspn("foo", "o", 1, 1));
?>
El resultado del ejemplo sería:
int(0) int(2) int(1)
Nota: Esta función es segura binariamente.