(PHP 4, PHP 5, PHP 7, PHP 8)
explode — Divide un string en varios string
Devuelve un array de string, siendo cada uno un substring del parámetro string
formado por la división realizada por los delimitadores indicados en el parámetro string separator
.
separator
El string delimitador.
string
El string de entrada.
limit
Si el parámetro limit
es positivo, el array devuelto contendrá el máximo de limit
elementos, y el último elemento contendrá el resto del string
.
Si el parámetro limit
es negativo, se devolverán todos los componentes a excepción del último -limit
.
Si el parámetro limit
es cero, se tratará como 1.
Nota:
Antes de PHP 8.0, implode() aceptaba los parámetros en cualquier orden. explode() nunca ha soportado esto: Debe asegurarse de que el argumento
separator
vaya antes que el argumentostring
.
Devuelve un array de string creados por la división del parámetro string
usando los delimitadores indicados en el parámetro delimiter
.
Si separator
es un string vacío (""), explode() devolverá un ValueError. Si separator
contiene un valor que no forma parte del parámetro string
y se utiliza un limit
negativo, entonces devolverá un array vacío, en caso contrario se devolverá un array que contiene el valor de string
. Si el valor de separator
aparece al comienzo o al final del string
, dichos valores se añadirán como un valor de array vacío en la primera o última posición a devolver respectivamente.
Versión | Descripción |
---|---|
8.0.0 | explode() ahora lanzará ValueError cuando el argumento separator reciba un string vacío ("" ). Anteriormente, explode() devolvía false en su lugar. |
Ejemplo #1 Ejemplo de explode()
<?php
// Ejemplo 1
$pizza = "porción1 porción2 porción3 porción4 porción5 porción6";
$porciones = explode(" ", $pizza);
echo $porciones[0]; // porción1
echo $porciones[1]; // porción2
// Ejemplo 2
$datos = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $datos);
echo $user; // foo
echo $pass; // *
?>
Ejemplo #2 Ejemplos de la devolución de explode()
<?php
$entrada1 = "hola";
$entrada2 = "hola,qué tal";
var_dump( explode( ',', $entrada1 ) );
var_dump( explode( ',', $entrada2 ) );
?>
El resultado del ejemplo sería:
array(1) ( [0] => string(4) "hola" ) array(2) ( [0] => string(4) "hola" [1] => string(8) "qué tal" )
Ejemplo #3 Ejemplos del parámetro limit
<?php
$str = 'uno|dos|tres|cuatro';
// límite positivo
print_r(explode('|', $str, 2));
// límite negativo
print_r(explode('|', $str, -1));
?>
El resultado del ejemplo sería:
Array ( [0] => uno [1] => dos|tres|cuatro ) Array ( [0] => uno [1] => dos [2] => tres )
Nota: Esta función es segura binariamente.