Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

strtok

String-Funktionen

    Befehl:
string strtok ( string $str , string $token )

string strtok ( string $token )


    Parameter-Liste:
NameBeschreibung
strDer String, der in kleinere Zeichenketten (Token) zerlegt werden soll.
tokenDie Trennzeichen, die auf str angewendet werden soll.

    Rückgabewerte:
Der aktuelle String-Token.

    Beschreibung:
strtok() zerlegt einen String (str) in kürzere Strings (Tokens), wobei jeder Token von im Parameter token festgelegten Zeichen begrenzt wird. Das bedeutet, dass, wenn Sie eine Zeichenkette wie "Dies ist ein Beispiel-String" haben, Sie ihn in seine einzelnen Worte zerlegen können, wenn 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 angegebenen Zeichen gefunden wird.


    Aktiv in Version:
(PHP 4, PHP 5, PHP 7)

    Warnung:
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:
•  split()
Zerlegt eine Zeichenkette anhand eines regulären Ausdrucks in ein Array
 
Teilt einen String anhand einer Zeichenkette
 

strtok() - Beispiel:


Eingabe:
<?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");
}
?>


Beschreibung:
Mit strtok() kann man eine Zeichenkette (arg1) in ihre Bestandteile zerlegen lassen. Die Funktion bricht die Zeichenkette an den Stellen auseinander, an denen die Zeichenkette den String arg2 enth�lt. Sie brauchen die zu zerlegende Zeichenkette (arg1) nur beim ersten Aufruf zu �bergeben. Alle nachfolgenden Aufrufe ben�tigen nur das Trennzeichen. M�chten Sie eine weitere Zerlegung mit einer anderen Zeichenkette, so rufen Sie die Funktion erneut mit beiden Parametern auf - strtok() wird dann neu initialisiert.
strtok() - Beispiel 2: Altes Verhalten von strtok()


Eingabe:
Das Verhalten der Funktion beim Auffinden eines leeren Teils wurde in PHP 4.1.0 verändert. Zuvor wurde ein leerer String zurückgegeben, wohingegen das neue, korrekte Verhalten diesen Teil des Strings verwirft.

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


Ausgabe:
    string(0) ""
    string(11) "irgendetwas"

Beschreibung:
Mit strtok() kann man eine Zeichenkette (arg1) in ihre Bestandteile zerlegen lassen. Die Funktion bricht die Zeichenkette an den Stellen auseinander, an denen die Zeichenkette den String arg2 enth�lt. Sie brauchen die zu zerlegende Zeichenkette (arg1) nur beim ersten Aufruf zu �bergeben. Alle nachfolgenden Aufrufe ben�tigen nur das Trennzeichen. M�chten Sie eine weitere Zerlegung mit einer anderen Zeichenkette, so rufen Sie die Funktion erneut mit beiden Parametern auf - strtok() wird dann neu initialisiert.
strtok() - Beispiel 2: Neues Verhalten von strtok()


Eingabe:
Das Verhalten der Funktion beim Auffinden eines leeren Teils wurde in PHP 4.1.0 verändert. Zuvor wurde ein leerer String zurückgegeben, wohingegen das neue, korrekte Verhalten diesen Teil des Strings verwirft.

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


Ausgabe:
    string(11) "irgendetwas"
    bool(false)

Beschreibung:
Mit strtok() kann man eine Zeichenkette (arg1) in ihre Bestandteile zerlegen lassen. Die Funktion bricht die Zeichenkette an den Stellen auseinander, an denen die Zeichenkette den String arg2 enth�lt. Sie brauchen die zu zerlegende Zeichenkette (arg1) nur beim ersten Aufruf zu �bergeben. Alle nachfolgenden Aufrufe ben�tigen nur das Trennzeichen. M�chten Sie eine weitere Zerlegung mit einer anderen Zeichenkette, so rufen Sie die Funktion erneut mit beiden Parametern auf - strtok() wird dann neu initialisiert.
String-Funktionen