explode
(PHP 4, PHP 5, PHP 7)
explode — Split a string by a string
Description
explode ( string $separator , string $string [, int $limit = PHP_INT_MAX ] ) : array
Returns an array of strings, each of which is a substring of string
formed by splitting it on boundaries formed by the string separator
.
Parameters
-
separator
-
The boundary string.
-
string
-
The input string.
-
limit
-
If
limit
is set and positive, the returned array will contain a maximum oflimit
elements with the last element containing the rest ofstring
.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
separator
argument comes before thestring
argument.
Return Values
Returns an array of strings created by splitting the string
parameter on boundaries formed by the separator
.
If separator
is an empty string (""), explode() will return false
. If separator
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.
Examples
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 )
Notes
Note: This function is binary-safe.
See Also
- preg_split() - Split string by a regular expression
- str_split() - Convert a string to an array
- mb_split() - Split multibyte string using regular expression
- str_word_count() - Return information about words used in a string
- strtok() - Tokenize string
- implode() - Join array elements with a string
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.explode.php