EXPLODE(3) 1 EXPLODE(3)
explode - Split a string by string
SYNOPSIS
array explode (string $delimiter, string $string, [int $limit])
DESCRIPTION
Returns an array of strings, each of which is a substring of $string formed by splitting it on boundaries formed by the string $delimiter.
PARAMETERS
o $delimiter
- The boundary string.
o $string
- The input string.
o $limit
- If $limit is set and positive, the returned array will contain a maximum of $limit elements with the last element containing the
rest of $string. If the $limit parameter is negative, all components except the last -$limit are returned. If the $limit parame-
ter is zero, then this is treated as 1.
Note
Although implode(3) can, for historical reasons, accept its parameters in either order, explode(3) cannot. You must ensure that the
$delimiter argument comes before the $string argument.
RETURN VALUES
Returns an array of strings created by splitting the $string parameter on boundaries formed by the $delimiter.
If $delimiter is an empty string (""), explode(3) will return FALSE. If $delimiter contains a value that is not contained in $string and a
negative $limit is used, then an empty array will be returned, otherwise an array containing $string will be returned.
CHANGELOG
+--------+-----------------------------------------+
|Version | |
| | |
| | Description |
| | |
+--------+-----------------------------------------+
| 5.1.0 | |
| | |
| | Support for negative $limits was added |
| | |
+--------+-----------------------------------------+
EXAMPLES
Example #1
explode(3) examples
<?php
// Example 1
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2
// Example 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // foo
echo $pass; // *
?>
Example #2
explode(3) return examples
<?php
/*
A string that doesn't contain the delimiter will simply
return a one-length array of the original string.
*/
$input1 = "hello";
$input2 = "hello,there";
var_dump( explode( ',', $input1 ) );
var_dump( explode( ',', $input2 ) );
?>
The above example will output:
array(1)
(
[0] => string(5) "hello"
)
array(2)
(
[0] => string(5) "hello"
[1] => string(5) "there"
)
Example #3
$limit parameter examples
<?php
$str = 'one|two|three|four';
// positive limit
print_r(explode('|', $str, 2));
// negative limit (since PHP 5.1)
print_r(explode('|', $str, -1));
?>
The above example will output:
Array
(
[0] => one
[1] => two|three|four
)
Array
(
[0] => one
[1] => two
[2] => three
)
NOTES
Note
This function is binary-safe.
SEE ALSO
preg_split(3), str_split(3), mb_split(3), str_word_count(3), strtok(3), implode(3).
PHP Documentation Group EXPLODE(3)