strspn
(PHP 4, PHP 5)
strspn — Ermittelt die Länge des initialen Abschnitts einer Zeichenkette, der ausschließlich aus Zeichen besteht, die in einer übergebenen Maske enthalten sind.
Beschreibung
$subject
, string $mask
[, int $start
[, int $length
]] )
Ermittelt die Länge des initialen Abschnitts von subject
der ausschließlich Zeichen
aus mask enthält.
Wenn start und length
ausgelassen werden, werden alle Zeichen von subject
untersucht. Wenn sie enthalten sind, ist das Ergebnis das Gleiche wie der
Aufruf strspn(substr($subject, $start, $length),
$mask) (siehe substr
für mehr Informationen).
Die Zeile
<?php
$var = strspn("42 ist die Antwort, was auf die 128. Frage?", "1234567890");
?>
subject das ausschließlich aus Zeichen besteht,
die in der Menge "1234567890" enthalten sind.
Parameter-Liste
-
subject -
Die zu untersuchende Zeichenkette.
-
mask -
Die Menge der erlaubten Zeichen.
-
start -
Die Position in
subjectan der die Suche startet.Wurde
startübergeben und ist nicht-negativ, wird strspn() beginnensubjectan derstartn Position zu untersuchen. Zum Beispiel in der Zeichenkette 'abcdef', das Zeichen an Position 0 ist 'a', das Zeichen an Position 2 ist 'c' und so weiter.Wurde
startübergeben und ist negativ, wird strspn() beginnensubjectan derstartn Position vom Ende vonsubjectzu untersuchen. -
length -
Die zu untersuchende Länge des Abschnitts von
subject.Wurde
startübergeben und ist nicht-negativ, werdenlengthZeichen vonsubjectnach der Startposition untersucht.Wurde
startübergeben und ist negativ, wirdsubjectvon der Startposition bis zulengthZeichen vom Ende vonsubjectuntersucht.
Rückgabewerte
Gibt die Länge des Abschnittes am Anfang von subject
zurück, der vollständig aus in mask angegebenen
Zeichen besteht.
Beispiele
Beispiel #1 strspn()-Beispiel
<?php
// subject beginnt nicht mit einem der Zeichen aus mask
var_dump(strspn("foo", "o"));
// Untersuche zwei Zeichen aus subject beginnend bei Offset 1
var_dump(strspn("foo", "o", 1, 2));
// Untersuche ein Zeichen aus subject beginnend bei Offset 1
var_dump(strspn("foo", "o", 1, 1));
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
int(0) int(2) int(1)
Anmerkungen
Hinweis: Diese Funktion ist binary safe.