ホームページ  >  記事  >  バックエンド開発  >  PHP: strtok() 関数の応用_PHP チュートリアル

PHP: strtok() 関数の応用_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 14:53:11786ブラウズ

explode()と比較して、strtok()関数はリズムを制御できます。必要に応じて紐をカットします。利点は次のとおりです:

1. 複数の区切り文字を一度に定義できます。関数が実行されると、区切り文字全体ではなく 1 つの区切り文字によってカットされますが、エクスプロードは区切り文字文字列全体によってカットされます。このため、explode は中国語でカットできますが、strtok はカットできず、文字化けします。

2. strtok() で while または for を使用してトラバースする場合、いつでもセパレーターを変更したり、break を使用してカットを終了したりできます。

例 1: 中国語 +explode を使用してカットする例を示します。

$string = "これは、PHP フォーラム フォーラム セクション フォーラム カラム H 管理者 フォーラム メンバーです。";
foreach($arr as $v)
{
echo $v."
"
}
echo "-------------
"; ;
Return:

これは PHP です

セクション

Hadmin
member
-------------

例 2: 置換カット文字のデモンストレーション, 次の WHILE には「H」区切り文字がないことに注意してください。代わりにスペースを使用してください。

$string = "これは PHP フォーラム フォーラム セクション フォーラム コラム H 管理者 フォーラム メンバーです"; ;
while ($tok !== false) {
echo "$tok
"; //スペース
//if($n>2); /いつでも飛び出せる。
//$n++
}
echo "-------------
";



Return:

これは P

P フォーラムですフォーラム セクション フォーラム セクション
フォーラム H 管理者
フォーラム メンバー
-------------



例 3: 複数の区切り文字を示します。

$string = "これは/tan example/nstring";

$tok = strtok($string, " /n/t") #スペース、改行、TAB while ($tok !== false) { echo "$tok
";
$tok = strtok(" /n/t");
}
echo "-------------
";



Return:

これは

サンプル 文字列 -------------$文字列= "abcde 123c4 99sadbc99b5232";





$tok($string, "bc");

while ($tok !="") {

echo "$tok
"; "bc"); } エコー "-------------
";


Return:

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

例 4: for を使用してトラバースする例:

$line = "leon/tatkinson/tleon@clearink.com";
for($token = strtok($line,"/t");$token!="";$token=strtok("/t "))
{
print("トークン: $token
/n");
}

Return:

トークン: レオン
トークン: atkinson
leon@clearink.コム

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/371493.html技術記事 strtok()関数はexplode()と比べてリズムを制御することができます。必要に応じて紐をカットします。利点は次のとおりです。 1. 複数のセパレータを一度に定義できます。関数が実行されるとき、単一の区切り文字に基づいて実行されます...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。