Aller au contenu

strtok()

Introduction

La fonction strtok() de PHP découpe une chaîne en parties plus petites, appelées jetons (tokens). Elle divise la chaîne en utilisant les caractères d'une chaîne délimiteur. Dans cet article, nous examinerons en détail la fonction strtok() et son utilisation en PHP.

Comprendre la fonction strtok()

La syntaxe pour utiliser la fonction strtok() en PHP est la suivante :

La syntaxe PHP de strtok()

php
strtok(string $str, string $delimiter) : string|false

Ici, $str est la chaîne à découper en jetons, et $delimiter est une chaîne où chaque caractère agit comme un séparateur individuel (et non un délimiteur multi-caractères). La fonction strtok() maintient un pointeur interne, ce qui la rend avec état (stateful). Elle renvoie le premier jeton trouvé dans la chaîne, et les appels suivants à la fonction avec $str défini sur null renverront les jetons suivants jusqu'à ce qu'il n'y en ait plus.

Si le paramètre $str n'est pas une chaîne ou si le paramètre $delimiter est une chaîne vide, la fonction renvoie false.

Exemple d'utilisation

Voici un exemple d'utilisation de la fonction strtok() en PHP :

Exemple de PHP strtok()

php
<?php

$string = "Hello World! How are you?";
$delimiter = " !?";

$token = strtok($string, $delimiter);

while ($token !== false) {
  echo "$token" . "\n";
  $token = strtok(null, $delimiter);
}

Dans l'exemple ci-dessus, nous définissons une chaîne $string et un délimiteur $delimiter. Nous utilisons la fonction strtok() pour découper la chaîne en parties plus petites, séparées par les caractères du délimiteur. Nous parcourons ensuite les jetons et les affichons un par un.

Conclusion

La fonction strtok() de PHP est un outil puissant pour découper une chaîne en parties plus petites. Elle peut être utilisée dans une grande variété de situations où une chaîne doit être divisée en parties plus petites, comme lors de l'analyse de texte ou de données. En comprenant comment utiliser la fonction strtok(), les développeurs peuvent créer des applications PHP plus efficaces et performantes. Notez que pour la plupart des applications PHP modernes, explode() ou str_getcsv() sont souvent préférés pour la tokenisation car ils sont sans état (stateless) et retournent directement des tableaux.

Pratique

Que fait la fonction PHP strtok ?

Trouvez-vous cela utile?

Aperçu dual-run — comparez avec les routes Symfony en production.