利点は次のとおりです。
1. 複数の区切り文字を一度に定義できます。関数が実行されると、区切り文字全体ではなく 1 つの区切り文字によってカットされますが、エクスプロードは区切り文字文字列全体によってカットされます。このため、explode は中国語でカットできますが、strtok はカットできず、文字化けします。
2. strtok() で while または for を使用してトラバースする場合、いつでもセパレーターを変更したり、break を使用してカットを終了したりできます。
例 1: 中国語 +explode を使用してカットする例を示します
$string = "これは PHP フォーラム フォーラム セクション フォーラム コラム フォーラム H 管理者 フォーラム メンバーです"; ; foreach($arr as $v) { echo $v." " } echo "----------- "; |
セクション 列 H 管理者 メンバー ------------- |
echo "$tok "; //スペース //if($n>2); /いつでも飛び出せる。 //$n++ } echo "------------- "; | Return:
P フォーラム
フォーラム メンバー ------------- | 例 3: 複数の区切り文字を示します。
$string = "これは examplenstring";
$tok = strtok($string, " nt"); #スペース、改行、TABwhile ($tok !== false) {
echo "------------- "; 戻り値: |
これは
サンプル文字列です
|
$tok = strtok("bc");
Return: |
4 99sad
995232
例 4: for を使用してトラバースする例: |
print("token: $token
n");
| トークン: レオン
|