explode() 使用一个字符串分割另一个字符串。
array explode( string $delimiter , string $string [, int $limit ])
参数描述
delimiter 边界上的分隔字符。
string 输入的字符串。
limit 如果设置了 limit 参数并且是正数,则返回的数组包含最多 limit 个元素,而最后那个元素将包含 string 的剩余部分。
如果 limit 参数是负数,则返回除了最后的 -limit 个元素外的所有元素。 如果 limit 是 0,则会被当做 1。
由于历史原因,虽然 implode() 可以接收两种参数顺序,但是 explode() 不行。你必须保证 separator 参数在 string 参数之前才行。
返回值:此函数返回由字符串组成的数组,每个元素都是 string 的一个子串,它们被字符串 delimiter 作为边界点分割出来。
如果 delimiter 为空字符串(""),explode() 将返回 FALSE。如果 delimiter 所包含的值在 string 中找不到,并且使用了负数的 limit , 那么会返回空的 array, 否则返回包含 string 单个元素的数组。
实例1:
<?php // 示例 1 $pizza ="piece1 piece2 piece3 piece4 piece5 piece6"; $pieces =explode(" ", $pizza);echo $pieces[0]; // piece1echo $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:
<?php $input1 ="hello"; $input2 ="hello,there"; var_dump(explode(‘,‘, $input1 )); var_dump(explode(‘,‘, $input2 )); ?>
输出:
array(1) ( [0]=>string(5)"hello" ) array(2) ( [0]=>string(5)"hello" [1]=>string(5)"there" )
实例3:
<?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 )