(PHP 3, PHP 4, PHP 5) explode--使用一個字串分割另一個字串描述
array explode ( string separator, string string [, int limit] )
此函數返回由字串組成的數組,每個元素都是 string 的一個子串,它們被字串 separator 作為邊界點分割出來。
如果設定了 limit 參數,則返回的數組包含最多 limit 個元素,而最後那個元素將包含 string 的剩餘部分。
如果 separator 為空白字串(""),explode() 將返回 FALSE。
如果 separator 所包含的值在 string 中找不到,那麼 explode() 將返回包含 string 單個元素的數組。
如果 limit 參數是負數,則返回除了最後的 limit 個元素外的所有元素。此特性是 PHP 5.1.0 中新增的。
由於曆史原因,雖然 implode() 可以接收兩種參數順序,但是 explode() 不行。你必須保證 separator 參數在 string 參數之前才行。
注: 參數 limit 是在 PHP 4.0.1 中加入的。
例子 1.
explode() 樣本
// 樣本 1
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2
// 樣本 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // foo
echo $pass; // *
例子 2.
limit 參數樣本
$str = 'one|two|three|four'; // 正數的
limit print_r(explode('|', $str, 2)); // 負數的
limit print_r(explode('|', $str, -1));
以上樣本將輸出:
Array ([0] => one [1] => two|three|four ) Array ( [0] => one [1] => two [2] => three)
注: 該函數可安全用於二進位對象。