Manuel PHP
Précédent |  | Suivant

# strtok

(PHP 3, PHP 4 , PHP 5)

strtok -- Coupe une chaîne en segments

## Description

string strtok ( string arg1, string arg2)

strtok() coupe la chaîne `arg1` en segments, chaque segment étant délimité par `arg2`. 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 :

Exemple 1. Exemple avec strtok()

`<?php $string = "Ceci est\tun bon\nexemple"; // Utilisez aussi les nouvelles lignes et les tabulations comme séparateur de mots $tok = strtok($string," \n\t"); while ($tok) { echo "Mot = $tok<br />"; $tok = strtok(" \n\t"); } ?>`

Notez que seul le premier appel à strtok() nécessite les deux arguments. Tous les appels ultérieurs à strtok() ne nécessitent que la chaîne à découper. Pour initialiser à nouveau strtok(), ou pour recommencer, fournissez à nouveau le paramètre `arg2`. La chaîne `arg1` sera découpé dès que l'un des caractères de `arg2` est trouvé.

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('/chose', '/'); $second_token = strtok('/'); var_dump($first_token, $second_token); ?>`

L'exemple ci-dessus va afficher :

    string(0) ""
    string(9) "chose"

Exemple 3. Nouveau comportement de strtok()

`<?php $first_token = strtok('/chose', '/'); $second_token = strtok('/'); var_dump($first_token, $second_token); ?>`

L'exemple ci-dessus va afficher :

    string(9) "chose"
    bool(false)

De plus, soyez prudents avec les séparateurs qui sont égaux à "0". Ces valeurs s'évaluent comme `FALSE` dans les expression conditionnelles.

Voir aussi split() et explode().

Précédent | Sommaire | Suivant
strstr | Niveau supérieur | strtolower