熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> PHP編程 >> 正文

PHP:strtok()函數的應用

2022-06-13   來源: PHP編程 

  相對於explode()來說strtok()函數可以控制節奏按需切割字串其優點是

  可以一次定義多個分隔符函數在執行時是按單個分隔符來切割而不是按整個分隔符而explode則是按整個分隔串來切割的正因此explode可以用中文切割而strtok則不行會亂碼

  在使用while或for配合strtok()遍歷時可以隨時更換分隔符也可以隨時用break跳出終止切割

  示例演示用中文+explode來切割

$string = 這是PHP論壇 論壇版塊 論壇欄目 論壇H管理員 論壇會員;
$arr = explode(論壇$string);
foreach($arr as $v)
{
echo $v<br />;
}
echo <br />;

  返回

這是PHP

版塊
欄目
H管理員
會員

  示例演示更換切割符注意後面WHILE中不再帶有H分隔符而只是用空格

$string = 這是PHP論壇 論壇版塊 論壇欄目 論壇H管理員 論壇會員;
$tok = strtok($string H); //空格+H
$n=;
while ($tok !== false) {
echo $tok<br />;
$tok = strtok( ); //空格
//if($n>)break; //可以隨時跳出
//$n++;
}
echo <br />; 這是P
P 論壇
論壇版塊
論壇欄目
論壇H管理員
論壇會員

  示例演示多分隔符

$string = This is/tan example/nstring;
$tok = strtok($string /n/t); #空格換行TAB
while ($tok !== false) {
echo $tok<br />;
$tok = strtok( /n/t);
}
echo <br />; This
is
an
example
string
$string = abcde c sadbcb;
$tok = strtok($string bc);
while ($tok !=) {
echo $tok<br />;
$tok = strtok(bc);
}
echo <br />; a
de
sad


  示例演示用for來遍歷

$line = leon/tatkinson/tleon@clearinkcom;
for($token = strtok($line/t);$token!=;$token=strtok(/t))
{
print(token: $token<BR>/n);
} token: leon
token: atkinson
token: leon@clearinkcom
From:http://tw.wingwit.com/Article/program/PHP/201311/21293.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.