(PHP 4, PHP 5, PHP 7)
explode — Split a string by string
$delimiter
, string $string
[, int $limit
= PHP_INT_MAX
] )
Returns an array of strings, each of which is a substring of
string
formed by splitting it on
boundaries formed by the string delimiter
.
delimiter
The boundary string.
string
The input string.
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
parameter is zero, then this is treated as 1.
Note:
Although implode() can, for historical reasons, accept its parameters in either order, explode() cannot. You must ensure that the
delimiter
argument comes before thestring
argument.
Returns an array of strings
created by splitting the string
parameter on
boundaries formed by the delimiter
.
If delimiter
is an empty string (""),
explode() 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.
Version | Description |
---|---|
5.1.0 |
Support for negative limit s was added
|
Example #1 explode() 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() 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";
$input3 = ',';
var_dump( explode( ',', $input1 ) );
var_dump( explode( ',', $input2 ) );
var_dump( explode( ',', $input3 ) );
?>
The above example will output:
array(1) ( [0] => string(5) "hello" ) array(2) ( [0] => string(5) "hello" [1] => string(5) "there" ) array(2) ( [0] => string(0) "" [1] => string(0) "" )
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 )
Note: This function is binary-safe.