Arrays en PHP: Guía Completa con Ejemplos
Aprende todo sobre los arrays en PHP: qué son, cómo se crean, tipos de arrays, funciones útiles y ejemplos prácticos para programadores principiantes.
Leer másResumen: Esta guía cubre desde los conceptos básicos hasta temas avanzados sobre arrays en PHP. Incluye ejemplos comentados, funciones comunes, buenas prácticas, rendimiento y ejercicios para practicar.
Un array es una estructura de datos que almacena múltiples valores en una sola variable. En PHP, los arrays son heterogéneos (pueden contener diferentes tipos) y dinámicos (puedes añadir o quitar elementos en tiempo de ejecución).
PHP implementa arrays con asociative arrays internamente — es decir, cada elemento tiene una clave (key) que puede ser un entero o una cadena, y un valor (value).
<?php
$frutas = ["Manzana", "Banana", "Naranja"];
<?php
$frutas = array("Manzana", "Banana", "Naranja");
<?php
$persona = [
"nombre" => "Andrés",
"edad" => 30,
"ciudad" => "Lima"
];
<?php
echo $frutas[0]; // Manzana
echo $persona["nombre"]; // Andrés
<?php
$frutas[1] = "Pera"; // reemplaza Banana por Pera
$persona["edad"] = 31;
<?php
$datos["telefono"] = "987654321";
<?php
unset($frutas[2]); // elimina Naranja (la clave 2)
Nota: unset() elimina la clave. Si trabajas con índices numéricos, la reindexación no ocurre automáticamente (usa array_values() si quieres reindexar).
<?php
foreach ($frutas as $index => $valor) {
echo "$index => $valor
";
}
<?php
foreach ($frutas as &$valor) {
$valor = strtoupper($valor);
}
unset($valor); // muy importante: eliminar la referencia al final
Si olvidas unset($valor) tras usar la referencia, la variable seguirá referenciando el último elemento y puede causar bugs.
<?php
for ($i=0, $n = count($frutas); $i < $n; $i++) {
echo $frutas[$i];
}
each() fue deprecated y eliminada en versiones recientes — usa foreach o ArrayIterator.
Nota: hay muchas funciones; aquí están las más usadas y prácticas.
count($arr) o sizeof($arr) — número de elementos.<?php
echo count($frutas); // 3
array_push($arr, $val) — añade al final (devuelve nuevo tamaño).array_pop($arr) — elimina y devuelve el último elemento.array_unshift($arr, $val) — añade al inicio.array_shift($arr) — elimina y devuelve el primer elemento.<?php
array_push($frutas, "Kiwi");
$ultimo = array_pop($frutas);
in_array($needle, $haystack) — busca valor.array_search($needle, $haystack) — devuelve clave o false.array_key_exists($key, $arr) — comprueba si existe la clave.isset($arr[$key]) — similar pero false si la clave existe y es null.<?php
if (in_array("Pera", $frutas)) { echo "existe"; }
$key = array_search("Pera", $frutas); // 1
array_map($callback, $arr) — aplica una función a cada elemento y devuelve nuevo array.array_filter($arr, $callback) — devuelve elementos que cumplan la condición.array_reduce($arr, $callback, $initial) — reduce en un único valor.array_walk($arr, $callback) — aplica función a cada elemento (no devuelve nuevo array, actúa en sitio o por referencia).<?php
$mayus = array_map('strtoupper', $frutas);
$pares = array_filter([1,2,3,4,5], fn($v) => $v % 2 === 0);
$sum = array_reduce([1,2,3,4], fn($carry,$v) => $carry + $v, 0);
array_keys($arr) — devuelve array de claves.array_values($arr) — devuelve array de valores.array_key_first($arr) / array_key_last($arr) — (PHP 7.3+) obtienen la primera/ultima clave.array_merge($a, $b) — une arrays; reindexa claves numéricas.array_merge_recursive($a, $b) — combina recursivamente.$union = $a + $b — unión por claves (preserva claves del primer array).array_combine($keys, $values) — crea array combinando claves y valores (ambos arrays deben tener mismo tamaño).<?php
$a = [0 => "cero", 1 => "uno"];
$b = [0 => "A", 2 => "dos"];
print_r(array_merge($a, $b)); // reindexa
print_r($a + $b); // conserva claves del $a
array_values($arr) — devuelve array con índices numéricos reindexados desde 0.array_slice, array_splice, array_chunk, array_rand, shuffle, array_unique, array_sum, array_product, array_count_values, array_column, array_flip.<?php
$parte = array_slice($frutas, 1, 2); // obtiene subarray
array_splice($frutas, 1, 1, ["Pera", "Melón"]); // reemplaza
$chunks = array_chunk($frutas, 2);
Importante: algunas funciones preservan las claves y otras no.
sort($arr) — ordena valores, reindexa claves.rsort($arr) — orden descendente.asort($arr) — ordena manteniendo relación clave=>valor (preserva claves).arsort($arr) — como asort en orden descendente.ksort($arr) — ordena por claves (ascendente).krsort($arr) — por claves (descendente).usort($arr, $callback) — ordena usando función de comparación (no preserva claves).uasort($arr, $callback) — orden por valores con callback y preserva claves.Ejemplo — ordenar asociativo por valores manteniendo claves:
<?php
$productos = ["a" => 10, "b" => 5, "c" => 8];
asort($productos); // b=>5, c=>8, a=>10 (claves preservadas)
Ejemplo — usort para objetos
<?php
$usuarios = [
["name" => "Ana", "edad" => 30],
["name" => "Luis", "edad" => 25],
];
usort($usuarios, fn($a,$b) => $a['edad'] <=> $b['edad']); // ordena por edad
Un array puede contener arrays (matrices / tablas).
<?php
$matriz = [
[1,2,3],
[4,5,6],
[7,8,9]
];
echo $matriz[1][2]; // 6
<?php
$usuarios = [
["id"=>1, "name"=>"Ana"],
["id"=>2, "name"=>"Luis"],
];
echo $usuarios[0]['name']; // Ana
<?php
foreach ($matriz as $fila) {
foreach ($fila as $valor) {
echo $valor;
}
}
<?php
$names = array_column($usuarios, 'name'); // ["Ana", "Luis"]
<?php
$producto = [
"id" => 10,
"nombre" => "Camiseta",
"precio" => 29.90
];
<?php
$usersById = [
101 => ["name"=>"Ana"],
102 => ["name"=>"Luis"]
];
echo $usersById[101]['name']; // Ana
<?php
$usersById[101]['email'] = "ana@example.com";
array_merge($a, $b) — combine arrays.array_slice($arr, $offset, $length) — copia parcial sin modificar original.array_splice(&$arr, $offset, $length, $replacement) — modifica el array original.array_chunk($arr, $size) — divide en bloques.<?php
$a = [1,2,3,4,5];
$b = array_slice($a, 1, 3); // [2,3,4]
array_splice($a, 1, 2); // $a ahora [1,4,5]
En PHP, la asignación de arrays usa copy-on-write: asignar un array a otra variable no duplica memoria hasta que uno de los dos se modifica.
<?php
$a = [1,2,3];
$b = $a; // no copia inmediatamente (copy-on-write)
$b[0] = 99; // ahora PHP hace la copia y modifica $b
<?php
$a = [1,2,3];
$b = &$a; // $b referencia a $a
$b[0] = 99;
echo $a[0]; // 99
Usa referencias con cuidado: pueden causar código difícil de mantener.
<?php
$json = json_encode($producto);
$array = json_decode($json, true); // true devuelve array asociativo
<?php
$csv = implode(",", $frutas); // "Manzana,Pera, ..."
$parts = explode(",", $csv);
<?php
$s = serialize($producto);
$orig = unserialize($s);
<?php
$std = (object) $producto; // array a objeto stdClass
$arr = (array) $std; // objeto a array
yield) para procesar elemento a elemento sin cargar todo en memoria.SplFixedArray puede usar menos memoria si el tamaño es fijo, pero su uso es menos común y la API es distinta.foreach con count() en la condición sin almacenarla en variable si el array puede cambiar en cada iteración. Mejor hacer $n = count($arr) antes.Ejemplo de generator
<?php
function iterarLineas($file) {
$f = fopen($file, 'r');
while (($line = fgets($f)) !== false) {
yield $line;
}
fclose($f);
}
foreach (iterarLineas('archivo.txt') as $line) {
// procesa línea sin cargar todo el archivo
}
ArrayObject y ArrayIterator — objetos que envuelven arrays y permiten métodos de iteración y manipulación.SplFixedArray — array de tamaño fijo (menor consumo de memoria en algunos casos).yield) — recorrer grandes conjuntos sin memorizarlos.unset($var) después de foreach(&$v) — produce referencias indeseadas.array_merge creyendo que preservará claves numéricas — array_merge reindexa claves numéricas.isset() y array_key_exists() — isset() devuelve false si la clave existe y su valor es null.array_combine() — ambos arrays deben tener el mismo tamaño.Invertir array: escribir función que reciba array y devuelva mismo array invertido sin usar array_reverse().
Contar palabras: dada una cadena, contar cuántas veces aparece cada palabra (uso de explode() y array_count_values()).
Agrupar por propiedad: dado array de usuarios con ['id','name','city'], agruparlos por city (resultado: ['Lima' => [user1,user2], 'Cusco'=>[...]]).
Merge sin perder claves: combinar dos arrays asociativos sin que las claves del primer array se sobrescriban (usa el operador +).
Filtrar duplicados por campo: dada lista de arrays (usuarios) eliminar duplicados por email conservando el primero.
var_dump($arr) — muestra estructura con tipos.print_r($arr) — formato legible.var_export($arr, true) — devuelve código PHP que representa el array.foreach para iterar por claridad. array_combine). yield o estructuras más eficientes. array_merge, sort, asort. unset().count(), in_array(), array_search(), array_key_exists(), isset(), array_keys(), array_values(), array_map(), array_filter(), array_reduce(), array_push(), array_pop(), array_shift(), array_unshift(), array_merge(), array_slice(), array_splice(), array_chunk(), array_column(), array_unique(), array_sum(), array_reverse().¿Quieres que guarde este contenido en un archivo .md para descargarlo? Puedo:
arrays-en-php-completo.md y darte el enlace de descarga, oAprende todo sobre los arrays en PHP: qué son, cómo se crean, tipos de arrays, funciones útiles y ejemplos prácticos para programadores principiantes.
Leer másAprende todo sobre los bucles en PHP. Descubre cómo funcionan while, do while, for y foreach con ejemplos claros, además de cómo usar break y continue.
Leer másAprende Clases y Objetos en PHP (POO): sintaxis, propiedades, métodos, visibilidad, herencia, interfaces, traits, magic methods y ejemplos prácticos. Ideal para PHP 7/8+
Leer másAprende a configurar CodeIgniter 4 con Nginx en un VPS Ubuntu 20. Guía completa para instalar, optimizar y desplegar tu aplicación web de forma segura y eficiente.
Leer másAprende a usar variables en PHP con ejemplos claros. Descubre cómo declararlas, concatenar cadenas de texto, realizar operaciones matemáticas y aplicar operadores en tus proyectos de programación web.
Leer másAprende los fundamentos de PHP desde cero. Descubre qué son las variables, cómo se declaran, sus tipos principales y ejemplos prácticos para comenzar a programar en PHP.
Leer másEntretenimiento Digital > Streamers Peruanos
Conoce a Andy Merino, mejor conocido como Zein o ElZeein: su carrera desde YouTube hasta Kick, récords en streaming, organización de eventos y su rol como pionero del contenido digital en Perú.
Leer másmarketing > Creador de Contenido
Aprende a utilizar Google Trends para identificar temas populares y crear contenido viral en 2025. Descubre cómo aprovechar esta herramienta para mejorar tu estrategia de SEO y atraer más tráfico orgánico.
Leer másConoce cómo se comporta Leo en el trabajo, sus fortalezas, debilidades, talentos laborales y los mejores tipos de empleo para este signo del zodiaco.
Leer másEntretenimiento Digital > Streamers Peruanos
Descubre la biografía de Marina Gold, su trayectoria, vida personal, logros y presencia en redes sociales. Conoce cómo se ha convertido en una de las creadoras de contenido más reconocidas del entretenimiento digital.
Leer másEconomía > Emprendimiento Digital
Descubre 10 negocios digitales rentables en 2025 que puedes iniciar con poca inversión y gran potencial de crecimiento. Ideal para emprendedores que buscan independencia financiera.
Leer másViajes y Turismo > Destinos y Experiencias
Descubre los 5 mejores destinos económicos para viajar en Perú este fin de año 2025. Guía completa con precios estimados, actividades recomendadas, opciones low cost y calificación para viajes solo, en pareja o con amigos. Perfecto para mochileros y viajeros de bajo presupuesto.
Leer másEntretenimiento Digital > Streamers Peruanos
Conoce la historia real de Marx Loayza, más conocido como Glogloking. De sus orígenes humildes en Arequipa a convertirse en uno de los streamers peruanos más populares.
Leer másViajes y Turismo > Destinos y Experiencias
Explora las 10 playas más hermosas del mundo en 2025. Descubre destinos exóticos y paradisiacos para unas vacaciones inolvidables y llenas de aventura.
Leer másDescubre cómo funciona el algoritmo de YouTube y aprende estrategias efectivas para aumentar tus vistas, retención y suscriptores en 2025.
Leer másDescubre las 5 tendencias tecnológicas que revolucionarán la vida cotidiana en 2025. Desde inteligencia artificial hasta realidad aumentada, conoce cómo la innovación transformará el futuro.
Leer másDescubre 10 formas efectivas de ganar dinero con Instagram en 2025, desde colaboraciones con marcas hasta la venta de productos digitales. Una guía práctica para emprendedores y creadores de contenido que buscan monetizar su presencia online.
Leer másDescubre cómo Aries influye en la vida espiritual: su energía, retos kármicos y el camino hacia el equilibrio interior.
Leer másAprende todo sobre los arrays en PHP: qué son, cómo se crean, tipos de arrays, funciones útiles y ejemplos prácticos para programadores principiantes.
Leer másDescubre la compatibilidad completa de Virgo con los 12 signos del zodiaco: amor, amistad y energía zodiacal. Una guía detallada para entender cómo se relaciona Virgo con cada signo en 2025.
Leer másAprende los 7 consejos más efectivos para proteger tu cuenta de Facebook en 2025, evitar hackeos y mantener tu información privada y segura.
Leer másDescubre por qué un software de gestión veterinaria SaaS con sistema de citas online puede transformar tu clínica veterinaria, optimizar tu agenda y mejorar la experiencia de tus clientes.
Leer másX11 puede referirse al sistema de ventanas en Linux, a un algoritmo de minería en criptomonedas como Dash o a modelos tecnológicos. Aquí te explicamos cada uso en detalle.
Leer másDescubre cómo empezar a correr paso a paso, con consejos prácticos para principiantes. Mejora tu salud, evita lesiones y crea un hábito duradero.
Leer másDescubre cómo es Cáncer en el trabajo: sus fortalezas, debilidades y la forma en que este signo zodiacal se desempeña en su vida profesional.
Leer másDescubre la historia del asesinato de John F. Kennedy, un crimen que conmocionó al mundo en 1963 y que aún hoy sigue rodeado de misterio y teorías de conspiración.
Leer másDescubre la compatibilidad de Tauro con todos los signos del zodiaco en el amor, la amistad y el trabajo. Conoce sus mejores y peores parejas.
Leer másDescubre cómo es Leo en la amistad: lealtad, generosidad, liderazgo, puntos fuertes y débiles, y cómo llevarte mejor con este signo del zodiaco.
Leer másUn análisis profundo sobre eventos actuales que están ocurriendo simultáneamente: fallas de satélites, decisiones autónomas de la inteligencia artificial y movimientos estratégicos que no aparecen en los grandes medios. ¿Coincidencia o patrón?
Leer másDurante siglos, la gente no dormía 8 horas seguidas. Descubre cómo la humanidad pasó del primer sueño y la vigilia nocturna al sueño continuo moderno, y por qué este antiguo ritual nocturno desapareció.
Leer másEconomía > Emprendimiento Digital
Descubre 7 estrategias clave para emprender con éxito en 2025. Aprende cómo planificar, innovar y liderar tu negocio para alcanzar el crecimiento y la productividad.
Leer másTecnología > Inteligencia Artificial
Descubre cómo la inteligencia artificial transformará el futuro del trabajo. Conoce los empleos en riesgo, las nuevas oportunidades y cómo prepararte para el cambio.
Leer másNo son las típicas conspiraciones. Estos 4 casos reales fueron negados durante años hasta que se confirmaron oficialmente. Historias reales que parecen ficción.
Leer más