explode
  Split a string by a string
  
 
 
  Description
  
   array explode(string $separator, string $string, int $limit = PHP_INT_MAX)
  
  
 
  Parameters
  
   
    
     - 
separator
- 
      
       The boundary string.
       
- 
string
- 
      
       The input string.
       
- 
limit
- 
      
       If limitis set and positive, the returned array will contain
       a maximum oflimitelements with the last
       element containing the rest ofstring.
 
       If the limitparameter is negative, all components
       except the last -limitare returned.
 
       If the limitparameter is zero, then this is treated as 1.
 
Note: 
   
    Prior to PHP 8.0, implode accepted its parameters in either order.
    explode has never supported this: you must ensure that the
    separator argument comes before the
    string 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 throws a ValueError.
   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. If separator 
   values appear at the start or end of string, said values 
   will be added as an empty array value either in the first or last 
   position of the returned array respectively.
  
  
 
 
  Examples
  
   
    Example #1 explode examples
    
<?php
// Example 1
$pizza  = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0], PHP_EOL; // piece1
echo $pieces[1], PHP_EOL; // piece2
// Example 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user, PHP_EOL; // foo
echo $pass, PHP_EOL; // *
?>
 
    
  
  
   
    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
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
- str_split
- mb_split
- str_word_count
- strtok
- implode