strtok

(PHP 4, PHP 5, PHP 7, PHP 8)

strtokZerlegt einen String

Beschreibung

strtok(string $string, string $token): string|false

Alternative Signatur (benannte Parameter werden nicht unterstützt):

strtok(string $token): string|false

strtok() zerlegt den String string in kürzere Strings (Token), wobei jeder Token durch ein beliebiges Zeichen aus token getrennt wird. Das bedeutet, wenn Sie einen String wie "Dies ist ein Beispiel-String" haben, können Sie ihn in seine einzelnen Worte zerlegen, indem Sie das Leerzeichen als token verwenden.

Beachten Sie, dass nur der erste Aufruf von strtok das string-Argument verwendet. Jeder Folgeaufruf von strtok benötigt nur den zu beachtenden token, um herauszufinden, wo sich diese im aktuellen String befinden. Um neu zu beginnen oder einen neuen String zu zerlegen, müssen Sie nur erneut strtok mit dem string-Parameter aufrufen, damit die Funktion neu initialisiert wird. Beachten Sie, dass Sie mehrere Token im token-Parameter angeben können. Der String wird dann an jeder Stelle zerlegt, an der eines der im token-Argument angegebenen Zeichen gefunden wird.

Hinweis:

Diese Funktion verhält sich etwas anders, als man es vielleicht erwartet, wenn man mit explode() vertraut ist. Zunächst wird eine Folge von zwei oder mehr zusammenhängenden token-Zeichen in der ausgewerteten Zeichenkette als ein einzelnes Trennzeichen betrachtet. Außerdem wird ein token, das sich am Anfang oder Ende der Zeichenkette befindet, ignoriert. Wenn zum Beispiel eine Zeichenkette ";aaa;;bbb;" verwendet wird, würden aufeinanderfolgende Aufrufe von strtok() mit ";" als token die Zeichenketten "aaa" und "bbb" und dann false zurückgeben. Als Ergebnis wird die Zeichenkette in nur zwei Elemente aufgeteilt, während explode(";", $string) ein Array mit 5 Elementen zurückgeben würde.

Parameter-Liste

string

Der String, der in kleinere Zeichenketten (Token) zerlegt werden soll.

token

Die Trennzeichen, die auf string angewendet werden sollen.

Rückgabewerte

Der aktuelle String-Token oder false, falls keine weiteren Token mehr vorhanden sind.

Beispiele

Beispiel #1 strtok()-Beispiel

<?php
$string 
"Dies ist\tein Beispiel-\nString";
/* Sowohl das Tabulator- als auch das Newline-Zeichen werden
   zusätzlich zum Leerzeichen als Token zum Zerlegen verwendet */
$tok strtok($string" \n\t");

while (
$tok !== false) {
    echo 
"Wort=$tok<br />";
    
$tok strtok(" \n\t");
}
?>

Beispiel #2 Verhalten von strtok() beim Auffinden eines leeren Teils

<?php
$erster_token  
strtok('/irgendetwas''/');
$zweiter_token strtok('/');
var_dump($erster_token$zweiter_token);
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

    string(11) "irgendetwas"
    bool(false)

Beispiel #3 Der Unterschied zwischen strtok() und explode()

<?php
$string 
";aaa;;bbb;";

$parts = [];
$tok strtok($string";");
while (
$tok !== false) {
    
$parts[] = $tok;
    
$tok strtok(";");
}
echo 
json_encode($parts),"\n";

$parts explode(";"$string);
echo 
json_encode($parts),"\n";

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

["aaa","bbb"]
["","aaa","","bbb",""]

Anmerkungen

Warnung

Diese Funktion kann sowohl das boolsche false zurückliefern, als auch einen nicht-boolschen Wert, welcher zu false ausgewertet wird. Weitere Informationen entnehmen Sie bitte dem Abschnitt über die boolschen Typen. Benutzen Sie deshalb den === Operator, um den Rückgabewert dieser Funktion zu überprüfen.

Siehe auch

  • explode() - Teilt eine Zeichenkette anhand einer Zeichenkette

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

Neuigkeiten für PHP-Entwickler: Laravel 11 Veröffentlichung

Am 12. März 2024 wurde die lang erwartete Version 11 des Laravel-Frameworks veröffentlicht, die eine Reihe von spannenden Neuerungen und Verbesserungen für die PHP-Entwicklungsgemeinschaft mit sich bringt. ...

Mike94

Autor : Mike94
Kategorie: PHP Magazin

Technisches SEO bleibt relevant

Technisches SEO – Was ist das überhaupt? Technisches SEO bezieht sich auf die Optimierung der technischen Aspekte deiner Webseite. Das Ziel ist klar! ...

admin

Autor : admin
Kategorie: SEO & Online-Marketing

Was ist neu in der PHP 8.2.10

PHP 8.2.10 ist eine der neuesten Versionen von PHP, die eine Reihe von Verbesserungen und neuen Funktionen mit sich bringt. In diesem Artikel werden wir einige der herausragenden Neuerungen und Verbesserungen dieser Version diskutieren. ...

admin

Autor : admin
Kategorie: Software-Updates

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

Seltsames Verhalten von execute() oder Fehler meinerseits

Hallo liebe Community, ich habe ein kleines Problem und vielleicht kann mir ja jemand helfen, würde ich mich sehr drüber freuen. Unten steht e ...

Geschrieben von garibaldiwz am 22.03.2024 13:03:12
Forum: SQL / Datenbanken
Google reCAPTCHA in Kontaktformular einbinden

Überprüfen Sie den E-Mail-Versand: Stellen Sie sicher, dass die E-Mail-Funktion mail() ordnungsgemäß funktioniert und dass keine Fehler beim V ...

Geschrieben von Gast am 18.03.2024 04:54:16
Forum: PHP Developer Forum
`count.php`

Hallo cober93327, und Danke fuer deine Antwort! :-) Naja, so einen "Besucherzähler" auf der Webseite anzuzeigen ist schon eher etwas, das man a ...

Geschrieben von kekse1 am 17.03.2024 15:56:38
Forum: Projekthilfe
`count.php`

Es gibt dazu natuerlich auch eine recht ausfuehrliche Dokumentation in meinem GitHub-Repository Es würde meiner Ansicht nach enorm helfen, wenn D ...

Geschrieben von cober93327 am 14.03.2024 15:49:28
Forum: Projekthilfe