split

(PHP 4, PHP 5)

splitDivide una cadena en una matriz mediante una expresión regular

Advertencia

Esta función está OBSOLETA en PHP 5.3.0, por lo tanto, será ELIMINADA en PHP 7.0.0.

Las alternativas a esta función son:

Descripción

split ( string $pattern , string $string [, int $limit = -1 ] ) : array

Divide un string en una matriz mediante una expresión regular.

Parámetros

pattern

Expresión regular sensible a mayúsculas-minúsculas.

Si quiere dividir cualesquiera caracteres que están considerados especiales por las expresiones regulares, necesitará escaparlos primero. Si piensa que split() (o, de hecho, cualquier otra función de expresión regular) está haciendo algo extraño, por favor, lea el archivo regex.7, incluido en el subdirectorio regex/ de la distribución de PHP. Estas páginas de ayuda están en formato "man", por lo que será necesaria una orden como man /usr/local/src/regex/regex.7 para poder leerlo.

string

La cadena de entrada.

limit

Si se establece limit, la matriz devuelta contendrá un máximo de limit elementos con el último elemento conteniendo el resto completo de string.

Valores devueltos

Devuelve una matriz de cadenas, siendo cada una de ellas una sub-cadena de string formada al dividir éste con los límites establecidos mediante la expresión regular sensible a mayúsculas-minúsculas pattern.

Si hay n incidencias de pattern, la matriz devuelta contentrá n+1 elementos. Por ejemplo, si no hay incidencias de pattern, será devuelta una matriz con sólo un elemento. Por supuesto, esto también es verdadero si string está vacío. Si se produce un error, split() devuelve FALSE.

Ejemplos

Ejemplo #1 Ejemplo de split()

Para obtener los cinco primeros campos de una línea de /etc/passwd:

<?php
list($usuario$contraseña$uid$gid$extra) =
    
split(":"$línea_passwd5);
?>

Ejemplo #2 Ejemplo de split()

Para analizar una fecha que puede estar delimitada por barras, puntos o guiones:

<?php
// Los delimitadores pueden ser barra, punto o guión
$fecha "04/30/1973";
list(
$mes$día$año) = split('[/.-]'$fecha);
echo 
"Mes: $mes; Día: $día; Año: $año<br />\n";
?>

Notas

Sugerencia

split() está obsoleta a partir de PHP 5.3.0. preg_split() es la alternativa sugerida a esta función. Si no necesita la potencia de expresiones regulares, es más rápido usar explode(), que no provoca el overhead del motor de expresiones regulares.

Sugerencia

Para usuarios que buscan un manera de emular el comportamiento de Perl @chars = split('', $str), por favor, vea los ejemplos de preg_split() o str_split().

Ver también

  • preg_split() - Divide un string mediante una expresión regular
  • spliti() - Divide una cadena en una matriz mediante una expresión regular insensible a mayúsculas-minúsculas
  • str_split() - Convierte un string en un array
  • explode() - Divide un string en varios string
  • implode() - Une elementos de un array en un string
  • chunk_split() - Divide una cadena en trozos más pequeños
  • wordwrap() - Ajusta un string hasta un número dado de caracteres