Teilen Sie die Zeichenfolge mit der Funktion strtok() in PHP

王林
Freigeben: 2023-06-27 09:08:03
Original
1100 Leute haben es durchsucht

In der PHP-Programmierung ist die String-Verarbeitung eine häufig verwendete Funktion. Eine der am häufigsten verwendeten Funktionen zur String-Manipulation ist strtok(). Die Funktion strtok() kann einen String durch Angabe des Trennzeichens in mehrere Teilstrings aufteilen. In diesem Artikel stellen wir die relevanten Kenntnisse und die Verwendung der Funktion strtok() vor.

1. Grundlegende Verwendung der Funktion strtok()

Die Funktion strtok() enthält zwei Parameter. Der erste Parameter ist die zu teilende Zeichenfolge und der zweite Parameter ist das angegebene Trennzeichen. Der Rückgabewert der Funktion ist der aktuell geteilte Teilstring.

Codebeispiel:

$str = "Hello, World! How are you today?"; $delimiter = " ,!"; $token = strtok($str, $delimiter); while ($token !== false) { echo "$token
"; $token = strtok($delimiter); }
Nach dem Login kopieren

Im obigen Beispiel verwenden wir die Funktion strtok(), um die Zeichenfolge $str in mehrere Teilzeichenfolgen aufzuteilen, wobei Kommas, Leerzeichen und Ausrufezeichen als Trennzeichen dienen. Das Ausführungsergebnis ist wie folgt:

Hello World How are you today?
Nach dem Login kopieren

Im obigen Code verwenden wir eine while-Schleife. Jede Schleife verwendet die Funktion strtok(), um einen Teilstring $token abzurufen und ihn dann auszugeben. Die Funktion gibt „false“ zurück, um anzuzeigen, dass keine weiteren Teilzeichenfolgen vorhanden sind.

2. Detaillierte Analyse der Funktion strtok()

Die vollständige Definition der Funktion strtok() lautet:

string strtok ( string $str, string $delimiter )
Nach dem Login kopieren

Darunter:

  • $str: die zu teilende Zeichenfolge.
  • $delimiter: Das angegebene Trennzeichen.

Rückgabewert der Funktion strtok():

  • Beim ersten Aufruf wird der erste Teilstring ohne Trennzeichen in $str zurückgegeben.
  • Gib bei nachfolgenden Aufrufen die verbleibende nicht begrenzte Teilzeichenfolge zurück.
  • Gibt false zurück, wenn keine weiteren nicht begrenzten Teilzeichenfolgen vorhanden sind.

Beim Aufruf der Funktion strtok() durchläuft PHP die Zeichenfolge $str von links nach rechts und schneidet sie entsprechend dem Trennzeichen $delimiter ab. Bei jedem Aufruf der Funktion wird ein Teilstring zurückgegeben und der interne Zeiger bewegt sich automatisch rückwärts, um auf den Anfang des nächsten Teilstrings zu zeigen. Dies bedeutet, dass bei jedem Aufruf der Funktion ein neuer Teilstring zurückgegeben wird.

Aber es ist zu beachten, dass Sie die Funktion strtok() wiederholt aufrufen müssen, um alle Trennzeichen zu erhalten, bis false zurückgegeben wird.

Codebeispiel:

$str = "this,is,a,comma,separated,string"; $delimiter = ","; $token = strtok($str, $delimiter); while ($token !== false) { echo "$token
"; $token = strtok($delimiter); }
Nach dem Login kopieren

Im obigen Beispiel verwenden wir die Funktion strtok(), um die Zeichenfolge $str in mehrere Teilzeichenfolgen aufzuteilen, wobei Kommas als Trennzeichen dienen. Das Ausführungsergebnis ist wie folgt:

this is a comma separated string
Nach dem Login kopieren

In diesem Beispiel setzen wir das Trennzeichen auf Komma. Wenn die Funktion strtok() zum ersten Mal aufgerufen wird, gibt sie den ersten Teilstring „this“ in dem String zurück, den wir teilen möchten. Dann rufen wir die Funktion strtok() wiederholt auf und geben jedes Mal einen neuen Teilstring zurück, bis false zurückgegeben wird.

3. Hinweise zur Funktion strtok()

  1. Sichern Sie die ursprüngliche Zeichenfolge

Wenn wir die Funktion strtok() zum Teilen einer Zeichenfolge verwenden, ändert die Funktion die ursprüngliche Zeichenfolge. Wenn Sie die Originalzeichenfolge in nachfolgenden Programmen verwenden müssen, müssen Sie diese zunächst sichern.

Codebeispiel:

$str = "first,second,third"; $delimiter = ","; $original_str = $str; $token = strtok($str, $delimiter); while ($token !== false) { echo "$token
"; $token = strtok($delimiter); } echo $original_str;
Nach dem Login kopieren
  1. Das Trennzeichen darf nur ein Zeichen sein

Es ist zu beachten, dass der Parameter $delimiter nur ein Zeichen sein darf, andernfalls wird er als jedes Zeichen behandelt, das auf die Übergabe wartet.

Codebeispiel:

$str = "one,two,three"; $delimiter = ",e"; $token = strtok($str, $delimiter); while ($token !== false) { echo "$token
"; $token = strtok($delimiter); }
Nach dem Login kopieren

Der erwartete Effekt dieses Codes besteht darin, die Zeichenfolge durch Komma und den Buchstaben e zu trennen. Tatsächlich verwendet die Funktion jedoch nicht den Buchstaben e als Trennzeichen, sondern behandelt das Zeichen „e“ als warte Trennzeichen, das heißt, zwei benachbarte Zeichen müssen für den normalen Gebrauch Trennzeichen sein.

  1. Die Auswirkung der Parameterreihenfolge

In der Funktion strtok() gibt der erste Parameter $str die zu teilende Zeichenfolge an und der zweite Parameter ist das angegebene Trennzeichen. Die Reihenfolge dieser beiden Parameter kann nicht umgekehrt werden. Wenn die Reihenfolge dieser beiden Parameter umgekehrt ist, wird ein Fehler gemeldet.

Codebeispiel:

$str = "one,two,three"; $delimiter = ","; // 错误方式 $token = strtok($delimiter, $str); while ($token !== false) { echo "$token
"; $token = strtok($delimiter); }
Nach dem Login kopieren

IV Zusammenfassung

In der PHP-Programmierung gibt es viele Szenarien, in denen String-Operationen verwendet werden. Die Funktion strtok() ist eine sehr praktische String-Aufteilungsfunktion, die einen String entsprechend dem angegebenen Trennzeichen in mehrere Teilstrings aufteilen kann.

Achten Sie bei Verwendung der Funktion strtok() auf die Art des Funktionsrückgabewerts, die Sicherung der Originalzeichenfolge, das Trennzeichen darf nur ein Zeichen sein und die Auswirkung der Reihenfolge der Parameter. Die ordnungsgemäße Verwendung der Funktion strtok() kann uns dabei helfen, Zeichenfolgen effizienter zu verarbeiten.

Das obige ist der detaillierte Inhalt vonTeilen Sie die Zeichenfolge mit der Funktion strtok() in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!