Aktueller Standort: Startseite> Neueste Artikel> Detaillierte Erläuterung der Funktion von PHP Strspn () und praktischen Beispielen

Detaillierte Erläuterung der Funktion von PHP Strspn () und praktischen Beispielen

gitbox 2025-07-26

Verstehe Strspn () -Funktion

PHP liefert eine Vielzahl von String -Verarbeitungsfunktionen, bei denen die Funktion von Strspn () verwendet wird, um die Länge der Zeichen in einer Zeichenfolge zu berechnen, die nacheinander dieselbe Zeichenfolge enthält. Es kann uns helfen, die Anzahl der Zeichen in zwei Zeichenfolgen schnell zu bestimmen.

Die grundlegende Syntax der Funktion von Strspn () lautet wie folgt:

 int strspn(string $str1, string $str2 [, int $start [, int $length]])

Funktionsparameter Beschreibung:

STR1: Erforderlich, die erste String, die überprüft wird.

STR2: Erforderlich, enthält die Zeichenfolge, die dem Zeichen entspricht.

Start: Optional, geben Sie an, wo Sie den Check in STR1 starten, und der Standard startet ab 0.

Länge: Geben Sie optional die Anzahl der zu überprüfenden Zeichen an, Standards für die Länge von STR1.

Diese Funktion gibt die Anzahl der Zeichen zurück, die in Str2 in aufeinanderfolgenden Zeichen von STR1 enthalten sind. Wenn alle Zeichen von STR1 in STR2 existieren, wird die Länge von STR1 zurückgegeben.

Beispiel für die Verwendung von Strspn () -Funktion

Das folgende Beispiel zeigt, wie die Funktion von Strrspn () verwendet wird, um die Anzahl der übereinstimmenden Zeichen in einer Zeichenfolge zu vergleichen:

 $str1 = "Hello, world!";
$str2 = "Hewoi";
$match = strspn($str1, $str2);
echo $match; // Ausgabe 2

In diesem Beispiel sind die beiden Zeichen "H" und "E", die mit der $ str1 -String beginnen, beide in $ str2 und somit 2 zurückgeben.

Bestimmen Sie, ob alle Strings übereinstimmen

Wenn Sie feststellen möchten, ob alle Zeichen in $ str1 in $ str2 erscheinen, können Sie die folgende Methode verwenden:

 $str1 = "foobar";
$str2 = "oofrab";
if (strlen($str1) == strspn($str1, $str2)) {
    echo "$str1 contains only characters found in $str2";
} else {
    echo "$str1 contains characters not found in $str2";
}

Dieser Code bestimmt, ob die Zeichen in $ str1 vollständig in $ str2 enthalten sind und das entsprechende Ergebnis ausgibt.

Löschen Sie nicht alphabetische Zeichen in Kombination mit der Funktion substr ()

Sie können die Funktion von Strrspn () und substr () verwenden, um nicht-alphabetische Zeichen in einer Zeichenfolge zu entfernen. Das Beispiel lautet wie folgt:

 $str = "Hello, world!";
$letters_only = substr($str, strspn($str, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"));
echo $letters_only; // Ausgabe "Helloworld"

Hier findet sich die Position des ersten nicht-alphabetischen Zeichens in der Saite durch Strspn () und fängt ihn dann mit substr () ab, so dass nur der Buchstabenteil zurückgelassen wird.

Entfernen von HTML -Tags in Kombination mit regulären Ausdrücken

Sie können auch die Funktion Strspn () verwenden, um HTML -Tags in Zeichenfolgen zu filtern und nur den Textinhalt beizubehalten:

 $str = "<p>This is a <strong>text</strong> with <i>HTML</i> tags</p>";
$text_only = substr($str, strspn($str, " <>&abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"));
echo $text_only; // Ausgabe "This is a text with HTML tags"

Diese Methode behält gemeinsame Textzeichen und teilweise Symbole bei und beseitigt HTML -Tags.

Zusammenfassen

Die Funktion von Strspn () ist ein leistungsstarkes Werkzeug in PHP, um die Zeichenfolge Matching zu verarbeiten. Durch das Beherrschen seiner Parameter und der Verwendung können Sie verschiedene Vorgänge wie String-Vergleiche und nicht-alphabetische Zeichen problemlos ausführen. In Kombination mit Substr () oder regulären Ausdrücken kann Strspn () die String -Verarbeitungseffizienz bei der täglichen Entwicklung erheblich verbessern.