Maison  >  Article  >  développement back-end  >  La différence entre la fonction explosive() et la fonction strtok() en php

La différence entre la fonction explosive() et la fonction strtok() en php

黄舟
黄舟original
2017-11-14 11:37:062516parcourir

Les fonctions

php strtok()function et explode() peuvent être utilisées pour diviser string, mais il existe quelques différences entre eux La différence est que par rapport à éclater(), la fonction strtok() peut contrôler le rythme. Cet article présente en détail la différence entre la fonction éclatée() et la fonction strtok() en PHP

Comparé ! toexploser() En d'autres termes, la fonction strtok() peut contrôler le rythme. Coupez la ficelle au besoin. Les avantages sont :

1. Plusieurs séparateurs peuvent être définis en même temps. Lorsque la fonction est exécutée, elle coupe par un seul délimiteur au lieu du délimiteur entier, tandis que l'éclatement coupe par la totalité de la chaîne de délimiteur. Pour cette raison, exploser peut être coupé en chinois, mais strtok ne peut pas et sera tronqué.

2. Lorsque vous utilisez while ou for avec strtok() pour parcourir, vous pouvez changer le séparateur à tout moment, ou utiliser break pour terminer la coupe à tout moment.

Exemple 1 : Démontre l'utilisation de l'explosion chinoise pour couper

$string = "这是PHP论坛 论坛版块 论坛栏目 论坛H管理员 论坛会员"; 
$arr = explode("论坛",$string); 
foreach($arr as $v) 
{ 
echo $v."<br />"; 
} 
echo "-------------<br />";

Résultat d'exécution :

这是PHP 

版块 
栏目 
H管理员 
会员 
-------------

Exemple 2 : Démontre la modification du caractère de coupe, veuillez noter qu'il y a il n'y a plus de WHILE dans ce qui suit Avec délimiteur "H". Utilisez plutôt des espaces.

$string = "这是PHP论坛 论坛版块 论坛栏目 论坛H管理员 论坛会员"; 
$tok = strtok($string, " H"); //空格+H $n=1; 
while ($tok !== false) { 
echo "$tok<br />"; 
$tok = strtok(" "); //空格 //if($n>2)break; //可以随时跳出。 //$n++; } 
echo "-------------<br />";

Résultat de l'exécution :

这是P 
P论坛 
论坛版块 
论坛栏目 
论坛H管理员 
论坛会员 
-------------

Exemple 3 : Démontrer plusieurs délimiteurs.

$string = "This is\tan example\nstring"; 
$tok = strtok($string, " \n\t"); #空格,换行,TAB while ($tok !== false) { 
echo "$tok<br />"; 
$tok = strtok(" \n\t"); 
} 
echo "-------------<br />";

Résultat d'exécution :

This 
is 
an 
example 
string 
-------------
$string = "abcde 123c4 99sadbc99b5232"; 
$tok = strtok($string, "bc"); 
while ($tok !="") { 
echo "$tok<br />"; 
$tok = strtok("bc"); 
} 
echo "-------------<br />";

Résultat d'exécution :

a 
de 123 4 99sad 
99 5232 -------------

Exemple 4 : Démontre l'utilisation de for pour parcourir :

$line = "leon\tatkinson\tleon@clearink.com"; 
for($token = strtok($line,"\t");$token!="";$token=strtok("\t")) 
{ 
print("token: $token<BR>\n"); 
}

Résultats de l'exécution :

token: leon 
token: atkinson 
token: leon@clearink.com

Résumé :

Je crois qu'en étudiant cet article, vous connaîtrez la relation entre strtok() et La différence entre la fonction explosive() est que vous pouvez choisir d'utiliser une certaine fonction en fonction de la situation spécifique au travail. J'espère que cela vous sera utile dans votre travail !

Recommandations associées :

Explication détaillée de l'application de la fonction éclater() en php


Exemple de code de la fonction exploser() en php


Définition détaillée de l'explosion( ) fonction en php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn