explode
(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() 例子
<?php // 示例 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 参数例子
<?php $str = 'one|two|three|four';
// 正数的 limit print_r(explode('|', $str, 2));
// 负数的 limit(自 PHP 5.1 起) print_r(explode('|', $str, -1)); ?>
|
上例将输出: Array
(
[0] => one
[1] => two|three|four
)
Array
(
[0] => one
[1] => two
[2] => three
) |
|
参见
preg_split(),spliti(),split(),strtok()
和 implode()。