strspn
(PHP 4, PHP 5, PHP 7, PHP 8)
strspn —
Averigua la longitud del segmento inicial de un string que consista
únicamente en caracteres contenidos dentro de una máscara dada
Descripción
strspn(
string $subject
,
string $mask
,
int $start
= ?,
int $length
= ?
): int
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:
asignará
2
a
$var,
debido a que el string "42" es el segmento inicial
de
subject
que consiste solamente en caracteres
contenidos dentro de "1234567890".
Parámetros
-
subject
-
El string a examinar.
-
mask
-
La 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
.
Valores devueltos
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 de
subject
.
Ejemplos
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:
Notas
Nota: Esta función es
segura binariamente.
Ver también
- strcspn() - Averiguar la longitud del segmento inicial que no coincida con una máscara