程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP explode()函數的幾個應用和implode()函數有什麼區別

PHP explode()函數的幾個應用和implode()函數有什麼區別

編輯:PHP綜合

explode()函數介紹

explode() 函數可以把字符串分割為數組。

語法:explode(separator,string,limit)。

參數 描述 separator 必需。規定在哪裡分割字符串。 string 必需。要分割的字符串。 limit

可選。規定所返回的數組元素的數目。

可能的值:

  • 大於 0 - 返回包含最多 limit 個元素的數組
  • 小於 0 - 返回包含除了最後的 -limit 個元素以外的所有元素的數組
  • 0 - 返回包含一個元素的數組

本函數返回由字符串組成的數組,其中的每個元素都是由 separator 作為邊界點分割出來的子字符串。

separator 參數不能是空字符串。如果 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[]; // Apple
echo $fruitArray[]; // Banana
// Example 
$data = "gonn:*:nowamagic:::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // gonn
echo $pass; // *
?>

程序運行結果:

Apple
Banana
gonn
*

Program List:使用limit參數的explode()例子

<?php
$str = 'one|two|three|four';
// positive limit
print_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 array
function 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 可選。規定數組元素之間放置的內容。默認是 ""(空字符串)。

array 必需。要結合為字符串的數組。

雖然 separator 參數是可選的。但是為了向後兼容,推薦您使用使用兩個參數。

PHP函數implode()的例子

<?php 
$arr = array('Hello','World!','Beautiful','Day!'); 
echo implode(" ",$arr); 
?> 

輸出:

Hello World! Beautiful Day!

上面這段代碼示例就是PHP函數implode()的具體實現功能的展現。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved