explode()函數介紹
explode() 函數可以把字串分割為數組。
文法:explode(separator,string,limit)。
參數 |
描述 |
separator |
必需。規定在哪裡分割字串。 |
string |
必需。要分割的字串。 |
limit |
可選。規定所返回的數組元素的數目。 可能的值:
- 大於 0 - 返回包含最多 limit 個元素的數組
- 小於 0 - 返回包含除了最後的 -limit 個元素以外的所有元素的數組
- 0 - 返回包含一個元素的數組
|
本函數返回由字串組成的數組,其中的每個元素都是由 separator 作為邊界點分割出來的子字串。
separator 參數不能是Null 字元串。如果 separator 為空白字串(""),explode() 將返回 FALSE。如果 separator 所包含的值在 string 中找不到,那麼 explode() 將返回包含 string 中單個元素的數組。
如果設定了 limit 參數,則返回的數組包含最多 limit 個元素,而最後那個元素將包含 string 的剩餘部分。
如果 limit 參數是負數,則返回除了最後的 -limit 個元素外的所有元素。此特性是 PHP 5.1.0 中新增的。
Program List:explode()例子
<?php// Example $fruit = "Apple Banana Orange Lemon Mango Pear";$fruitArray = explode(" ", $fruit);echo $fruitArray[]; // Appleecho $fruitArray[]; // Banana// Example $data = "gonn:*:nowamagic:::/home/foo:/bin/sh";list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);echo $user; // gonnecho $pass; // *?>
程式運行結果:
Apple
Banana
gonn
*
Program List:使用limit參數的explode()例子
<?php$str = 'one|two|three|four';// positive limitprint_r(explode('|', $str, ));// negative limit (since PHP .)print_r(explode('|', $str, -));?>
程式運行結果:
Array( [] => one [] => two|three|four)Array( [] => one [] => two [] => three)
Program List:將字串化為索引值數組
<?php// converts pure string into a trimmed keyed arrayfunction stringKeyedArray($string, $delimiter = ',', $kv = '=>') { if ($a = explode($delimiter, $string)) { // create parts foreach ($a as $s) { // each part if ($s) { if ($pos = strpos($s, $kv)) { // key/value delimiter $ka[trim(substr($s, , $pos))] = trim(substr($s, $pos + strlen($kv))); } else { // key delimiter not found $ka[] = trim($s); } } } return $ka; }} // stringKeyedArray$string = 'a=>, b=>, $a, c=>%, true, d=>ab c';print_r(stringKeyedArray($string));?>
程式運行結果:
Array
(
[a] =>
[b] =>
[] => $a
[c] => %
[] => true
[d] => ab c
)
PS:PHP函數implode()與explode()函數的不同之處
以上內容給大家介紹了explode() 函數的具體用法。當我們遇到 PHP函數implode()把數組元素組合為一個字串。
implode(separator,array)
separator 可選。規定數組元素之間放置的內容。預設是 ""(Null 字元串)。
array 必需。要結合為字串的數組。
雖然 separator 參數是可選的。但是為了向後相容,推薦您使用使用兩個參數。
PHP函數implode()的例子
<?php $arr = array('Hello','World!','Beautiful','Day!'); echo implode(" ",$arr); ?>
輸出:
Hello World! Beautiful Day!
上面這段程式碼範例就是PHP函數implode()的具體實現功能的展現。