在php中分割一個字串,我們可以使用函數explode(),其原型如下
array explode (string $separator, string $string [, int $limit])
該函數有3個參數,第一個參數$separator設定一個分割字元(串)。第二個參數$string指定所要操作的字串。$limit參數是可選的,指定最多將字串分割為多少個子串。
該函數返回一個由被分割的子串組成的數組。
來看下面的例子,對一個由逗號分隔的多行文本資料進行分析。
例1,分割字串。
代碼如下:
<?php$this_year = 2013;$text = <<< EOT祝無雙,F,1982,廣東,普遍職員李三兵,M,1981,河北,普通職員趙樸秀,F,1980,韓國,專案經理EOT;$lines = explode("\n", $text); //將多行資料分開foreach ($lines as $userinfo) { $info = explode(",", $userinfo, 3); //僅分割前三個資料 $name = $info[0]; $sex = ($info[1] == "F")? "女" : "男"; $age = $this_year - $info[2]; echo "姓名: $name $sex . 年齡:$age <br/>";}/* 輸出結果是:姓名:祝無雙 女 年齡:31姓名:李三兵 男 年齡:32姓名:趙樸秀 女 年齡:33*/?>
以上代碼,先對文本按行進行分割,然後將每行字串按","進行分割,並取前三個資料進行處理分析,然後進行整理並輸出。
另外,為大家介紹php的另一個內建函數implode(),用於串連數組成為字串。
與分割字串函數相對應的是implode()函數,它的別名函數叫做join(),函數原型分別如下。
string implode(string $glue, array $pieces)
string join(string $glue, array $pieces)
implode()或join()函數可以將數組$pieces中的元素用指定的字元$glue串連起來。
下面為大家舉一個簡單的例子,供學習參考。
例2:
代碼如下:
<?php$fruits = array('apple', 'banana', 'pear');$str = implode(", ", $fruits);echo $str;?>