(PHP 4, PHP 5)
strtok — Coupe une chaîne en segments
strtok() coupe la chaîne str en segment, chaque segment étant délimité par token . Par exemple, si vous avez une chaîne telle que "Voici un bon exemple", vous pouvez en extraire les différents mots en utilisant cette fonction.
Notez que seul le premier appel à strtok() nécessite les deux arguments. Tous les appels ultérieurs à strtok() ne nécessitent que le délimiteur. Pour initialiser à nouveau strtok(), ou pour recommencer, fournissez à nouveau le paramètre str . La chaîne str sera découpée dès que l'un des caractères de token est trouvé.
La chaîne que l'on doit couper en plusieurs chaînes de tailles plus petites.
Le délimiteur utilisé lors de la découpe.
Une chaîne coupée.
Exemple #1 Exemple avec strtok()
<?php
$string = "This is\tan example\nstring";
// Utilisez aussi les nouvelles lignes et les tabulations
// comme séparateur de mots
$tok = strtok($string, " \n\t");
while ($tok !== false) {
echo "Word=$tok<br />";
$tok = strtok(" \n\t");
}
?>
Le comportement de cette fonction avec la chaîne vide a changé depuis PHP 4.1.0. L'ancien comportement était de retourner une chaîne vide, tandis que le nouveau comportement, plus correct, retourne FALSE :
Exemple #2 Ancien comportement de strtok()
<?php
$first_token = strtok('/something', '/');
$second_token = strtok('/');
var_dump($first_token, $second_token);
?>
L'exemple ci-dessus va afficher :
string(0) "" string(9) "something"
Exemple #3 Nouveau comportement de strtok()
<?php
$first_token = strtok('/something', '/');
$second_token = strtok('/');
var_dump($first_token, $second_token);
?>
L'exemple ci-dessus va afficher :
string(9) "something" bool(false)
Cette fonction peut retourner FALSE, mais elle peut aussi retourner une valeur équivalent à FALSE, utilisable dans une condition if simple. Utilisez l'opérateur === pour tester la valeur de retour exacte de cette fonction.