Arrays en PHP: Guía Completa con Ejemplos

Arrays en PHP — Guía completa y detallada

Resumen: 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.


Índice

  1. ¿Qué es un array?
  2. Cómo crear arrays
  3. Acceder y modificar elementos
  4. Iterar arrays
  5. Funciones útiles (con ejemplos)
  6. Ordenar arrays
  7. Arrays multidimensionales
  8. Arrays asociativos con ejemplos prácticos
  9. Operaciones comunes: merge, slice, splice, chunk
  10. Referencias y copy-on-write
  11. Convertir arrays: JSON, strings y objetos
  12. Rendimiento y memoría (tips)
  13. Herramientas y estructuras alternativas
  14. Errores comunes y cómo evitarlos
  15. Ejercicios prácticos
  16. Resumen y buenas prácticas

¿Qué es un array?

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).


Cómo crear arrays

Sintaxis moderna (short array syntax)

<?php
$frutas = ["Manzana", "Banana", "Naranja"];

Sintaxis antigua (array())

<?php
$frutas = array("Manzana", "Banana", "Naranja");

Arrays asociativos (claves personalizadas)

<?php
$persona = [
    "nombre" => "Andrés",
    "edad" => 30,
    "ciudad" => "Lima"
];

Arrays vacíos y añadir elementos

Acceder y modificar elementos

Acceder por índice / clave

<?php
echo $frutas[0];           // Manzana
echo $persona["nombre"];   // Andrés

Modificar

<?php
$frutas[1] = "Pera";       // reemplaza Banana por Pera
$persona["edad"] = 31;

Añadir con llave específica

<?php
$datos["telefono"] = "987654321";

Eliminar elementos

<?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).


Iterar arrays

foreach (recomendado)

<?php
foreach ($frutas as $index => $valor) {
    echo "$index => $valor
";
}

foreach por referencia (modificar valores)

<?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.

for con count

<?php
for ($i=0, $n = count($frutas); $i < $n; $i++) {
    echo $frutas[$i];
}

while con each (no recomendado)

each() fue deprecated y eliminada en versiones recientes — usa foreach o ArrayIterator.


Funciones útiles (con ejemplos)

Nota: hay muchas funciones; aquí están las más usadas y prácticas.

Información y tamaño

  • count($arr) o sizeof($arr) — número de elementos.
<?php
echo count($frutas); // 3

Añadir / quitar

  • 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);

Buscar / comprobar

  • 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

Transformación y filtrado

  • 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);

Claves y valores

  • 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.

Combinación y unión

  • 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

Reindexar

  • array_values($arr) — devuelve array con índices numéricos reindexados desde 0.

Extra

  • 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);

Ordenar arrays

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

Arrays multidimensionales

Un array puede contener arrays (matrices / tablas).

<?php
$matriz = [
    [1,2,3],
    [4,5,6],
    [7,8,9]
];

echo $matriz[1][2]; // 6

Ejemplo con claves

<?php
$usuarios = [
    ["id"=>1, "name"=>"Ana"],
    ["id"=>2, "name"=>"Luis"],
];
echo $usuarios[0]['name']; // Ana

Recorrer con foreach anidado

<?php
foreach ($matriz as $fila) {
    foreach ($fila as $valor) {
        echo $valor;
    }
}

array_column — extraer columna

<?php
$names = array_column($usuarios, 'name'); // ["Ana", "Luis"]

Arrays asociativos — ejemplos prácticos

Representar una entidad (DTO simple)

<?php
$producto = [
    "id" => 10,
    "nombre" => "Camiseta",
    "precio" => 29.90
];

Guardar usuarios por id (acceso rápido)

<?php
$usersById = [
    101 => ["name"=>"Ana"],
    102 => ["name"=>"Luis"]
];

echo $usersById[101]['name']; // Ana

Actualizar en sitio

<?php
$usersById[101]['email'] = "ana@example.com";

Operaciones comunes: merge, slice, splice, chunk

  • 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]

Referencias y copy-on-write

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

Referencias explícitas

<?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.


Convertir arrays: JSON, strings y objetos

JSON

<?php
$json = json_encode($producto);
$array = json_decode($json, true); // true devuelve array asociativo

Implode / Explode (strings)

<?php
$csv = implode(",", $frutas); // "Manzana,Pera, ..."
$parts = explode(",", $csv);

Serializar

<?php
$s = serialize($producto);
$orig = unserialize($s);

Array <-> Object

<?php
$std = (object) $producto;        // array a objeto stdClass
$arr = (array) $std;              // objeto a array

Rendimiento y memoría (tips)

  • PHP usa copy-on-write: asignar arrays es barato hasta que los modificas.
  • Para colecciones muy grandes, considera usar generators (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.
  • Evita 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
}

Herramientas y estructuras alternativas

  • 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).
  • Generators (yield) — recorrer grandes conjuntos sin memorizarlos.

Errores comunes y cómo evitarlos

  1. Olvidar unset($var) después de foreach(&$v) — produce referencias indeseadas.
  2. Usar array_merge creyendo que preservará claves numéricasarray_merge reindexa claves numéricas.
  3. Modificar un array mientras se itera sobre él — puede producir comportamiento impredecible.
  4. Confundir isset() y array_key_exists()isset() devuelve false si la clave existe y su valor es null.
  5. Olvidar validar datos al usar array_combine() — ambos arrays deben tener el mismo tamaño.

Ejercicios prácticos (con pistas)

  1. Invertir array: escribir función que reciba array y devuelva mismo array invertido sin usar array_reverse().

    • Pista: recorre desde el final al inicio.
  2. Contar palabras: dada una cadena, contar cuántas veces aparece cada palabra (uso de explode() y array_count_values()).

  3. Agrupar por propiedad: dado array de usuarios con ['id','name','city'], agruparlos por city (resultado: ['Lima' => [user1,user2], 'Cusco'=>[...]]).

  4. Merge sin perder claves: combinar dos arrays asociativos sin que las claves del primer array se sobrescriban (usa el operador +).

  5. Filtrar duplicados por campo: dada lista de arrays (usuarios) eliminar duplicados por email conservando el primero.


Utilidades de depuración

  • var_dump($arr) — muestra estructura con tipos.
  • print_r($arr) — formato legible.
  • var_export($arr, true) — devuelve código PHP que representa el array.
  • Usa Xdebug para inspección avanzada.

Resumen y buenas prácticas

  • Usa arrays para almacenar colecciones; elige indexado o asociativo según el caso.
  • Prefiere foreach para iterar por claridad.
  • Valida datos antes de usar funciones que requieren tamaños/formatos (ej. array_combine).
  • Para grandes volúmenes, considera yield o estructuras más eficientes.
  • Conoce las reglas de reindexado y preservación de claves al usar funciones como array_merge, sort, asort.
  • Evita referencias innecesarias; cuando las uses, libera la referencia con unset().

Referencias rápidas (funciones más usadas)

  • 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:

  • Guardarlo como arrays-en-php-completo.md y darte el enlace de descarga, o
  • Convertirlo a HTML listo para tu CMS (con meta tags).

Artículos relacionados

Condicionales en PHP: if, else, elseif, switch y ejemplos prácticos

Tutoriales > php

Condicionales en PHP: if, else, elseif, switch y ejemplos prácticos

Aprende a usar condicionales en PHP paso a paso. Descubre cómo funcionan if, else, elseif, switch, el operador ternario y ?? con ejemplos prácticos y buenas prácticas de programación.

Leer más
Cómo configurar CodeIgniter 4 con Nginx en un VPS Ubuntu 20 paso a paso

Tutoriales > php

Cómo configurar CodeIgniter 4 con Nginx en un VPS Ubuntu 20 paso a paso

Aprende 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ás
Arrays en PHP: Guía Completa con Ejemplos

Tutoriales > php

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ás
Clases y Objetos en PHP: Guía completa de POO con ejemplos

Tutoriales > php

Clases y Objetos en PHP: Guía completa de POO con ejemplos

Aprende 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ás
Bucles en PHP: while, do while, for, foreach y ejemplos prácticos

Tutoriales > php

Bucles en PHP: while, do while, for, foreach y ejemplos prácticos

Aprende 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ás
Inicios en PHP: Todo lo que debes saber sobre variables y sus tipos

Tutoriales > php

Inicios en PHP: Todo lo que debes saber sobre variables y sus tipos

Aprende 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ás
Dormir en dos partes: el ritual nocturno olvidado de la Edad Media

Historia > Edad Media

Dormir en dos partes: el ritual nocturno olvidado de la Edad Media

Durante 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ás
Erick Moreno “El Monstruo”: biografía, crímenes y captura del delincuente más buscado del Perú

Terror > Crímenes

Erick Moreno “El Monstruo”: biografía, crímenes y captura del delincuente más buscado del Perú

Descubre la historia de Erick Moreno, alias “El Monstruo”, el delincuente más buscado del Perú. Biografía, crímenes, recompensa millonaria y su captura en Paraguay.

Leer más
El Futuro del Teletrabajo en 2025: Tendencias, Beneficios y Retos

Economía > Emprendimiento Digital

El Futuro del Teletrabajo en 2025: Tendencias, Beneficios y Retos

Descubre cómo evoluciona el teletrabajo en 2025, las nuevas tendencias laborales, beneficios para empleados y empresas, y los principales retos de esta modalidad.

Leer más
Trucos psicológicos para gastar menos y ahorrar más

Economía > Finanzas Personales

Trucos psicológicos para gastar menos y ahorrar más

Descubre los mejores trucos psicológicos para gastar menos y ahorrar más. Estrategias simples y efectivas para mejorar tu relación con el dinero.

Leer más
Esto está pasando ahora y nadie lo explica: satélites, IA y movimientos que preocupan al mundo

Internacional > Geopolítica

Esto está pasando ahora y nadie lo explica: satélites, IA y movimientos que preocupan al mundo

Un 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ás
Cáncer en la Salud: Bienestar físico y emocional del signo zodiacal

Astrología > Cáncer

Cáncer en la Salud: Bienestar físico y emocional del signo zodiacal

Descubre cómo influye el signo Cáncer en la salud física y emocional. Conoce sus puntos fuertes, vulnerabilidades y consejos para mantener el equilibrio y el bienestar diario

Leer más
Luis Alfredo Garavito: la historia del mayor asesino serial de Colombia

Terror > Crímenes

Luis Alfredo Garavito: la historia del mayor asesino serial de Colombia

Conoce la historia de Luis Alfredo Garavito, “La Bestia”, el asesino serial más temido de Colombia, responsable de más de 170 víctimas entre niños y adolescentes.

Leer más
Cómo Crear un Negocio Online con Poca Inversión

Economía > Emprendimiento Digital

Cómo Crear un Negocio Online con Poca Inversión

Descubre cómo crear un negocio online rentable con poca inversión. Aprende estrategias, herramientas y modelos de negocio digital que puedes comenzar hoy mismo para generar ingresos desde internet.

Leer más
Cuando beber agua era un riesgo: por qué la cerveza salvó vidas en la Edad Media

Historia > Edad Media

Cuando beber agua era un riesgo: por qué la cerveza salvó vidas en la Edad Media

Durante la Edad Media, el agua estaba tan contaminada que beberla podía ser mortal. Descubre cómo la cerveza se convirtió en una bebida vital para la supervivencia, la salud y la economía medieval.

Leer más
Cómo Usar Google Trends para Encontrar Ideas de Contenido Viral en 2025

marketing > Creador de Contenido

Cómo Usar Google Trends para Encontrar Ideas de Contenido Viral en 2025

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ás
Tauro en la salud: puntos débiles, fortalezas y consejos de bienestar

Astrología > Tauro

Tauro en la salud: puntos débiles, fortalezas y consejos de bienestar

Descubre cómo es Tauro en la salud: sus puntos fuertes y débiles, órganos más sensibles y los mejores consejos de bienestar físico y emocional.

Leer más
4 Teorías de Conspiración Que Resultaron Ser Ciertas (Con Evidencia)

Internacional > Conspiración

4 Teorías de Conspiración Que Resultaron Ser Ciertas (Con Evidencia)

Ejemplos reales de teorías de conspiración que fueron consideradas absurdas o falsas, pero que después terminaron confirmándose con evidencia, documentos desclasificados o investigaciones oficiales.

Leer más
Tauro en la vida espiritual: estabilidad, conexión y crecimiento interior

Astrología > Tauro

Tauro en la vida espiritual: estabilidad, conexión y crecimiento interior

Descubre cómo es Tauro en la vida espiritual: sus fortalezas, desafíos y consejos prácticos para lograr equilibrio y despertar interior.

Leer más
Las redes sociales que dominarán en 2025

Tecnología > Redes Sociales

Las redes sociales que dominarán en 2025

Descubre cuáles serán las redes sociales más importantes en 2025 y cómo marcarán el futuro de la comunicación, el marketing y los negocios digitales.

Leer más
Biografía de Andy Merino (Zein): trayectoria, éxitos y eventos clave

Entretenimiento Digital > Streamers Peruanos

Biografía de Andy Merino (Zein): trayectoria, éxitos y eventos clave

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ás
Tendencias de emprendimiento digital que crecerán este año

Economía > Emprendimiento Digital

Tendencias de emprendimiento digital que crecerán este año

Descubre las principales tendencias de emprendimiento digital que marcarán este año. Aprende qué negocios online tendrán más crecimiento y oportunidades.

Leer más
Leo en el amor: cómo ama este signo y qué necesita en una relación

Astrología > Leo

Leo en el amor: cómo ama este signo y qué necesita en una relación

Descubre cómo es Leo en el amor, sus fortalezas, debilidades emocionales, compatibilidades y claves para conquistar a este signo apasionado del zodiaco.

Leer más
Cómo usar WhatsApp sin número de teléfono en 2025

Tecnología > Redes Sociales

Cómo usar WhatsApp sin número de teléfono en 2025

Aprende paso a paso cómo usar WhatsApp sin número de teléfono físico en 2025, usando alternativas seguras y legales. Guía completa y actualizada.

Leer más
Cómo es Géminis en el trabajo: fortalezas, debilidades y consejo

Astrología > Géminis

Cómo es Géminis en el trabajo: fortalezas, debilidades y consejo

Descubre cómo es Géminis en el ámbito laboral: sus fortalezas, debilidades y consejos para aprovechar su energía y creatividad en el trabajo.

Leer más
Por qué la gente tenía miedo de bañarse en la Edad Media

Historia > Edad Media

Por qué la gente tenía miedo de bañarse en la Edad Media

Durante siglos, la gente creyó que bañarse podía causar enfermedades mortales. Descubre cómo el miedo al agua, la peste y la religión transformaron la higiene en la Edad Media.

Leer más
Guía para crear tu primer presupuesto mensual paso a paso

Economía > Finanzas Personales

Guía para crear tu primer presupuesto mensual paso a paso

Aprende cómo hacer tu primer presupuesto mensual paso a paso: controla tus ingresos, gastos y ahorra de forma inteligente con esta guía práctica.

Leer más
Tu cerebro te miente todos los días: descubre cómo detectarlo

Psicología > Comportamiento Humano

Tu cerebro te miente todos los días: descubre cómo detectarlo

Aprende cómo los sesgos mentales como el efecto Dunning-Kruger, el sesgo de confirmación y el anclaje controlan tus decisiones sin que lo notes. Descubre cómo tu cerebro te sabotea a diario y cómo detectarlo.

Leer más
Compatibilidad de Leo con los demás signos: amor, amistad y energía zodiacal

Astrología > Leo

Compatibilidad de Leo con los demás signos: amor, amistad y energía zodiacal

Descubre con qué signos es más compatible Leo en el amor, la amistad y el trabajo. Análisis detallado de afinidades, tensiones y relaciones ideales para este signo de fuego.

Leer más
Compatibilidad de Virgo con los 12 signos: amor, amistad y energía zodiacal

Astrología > Virgo

Compatibilidad de Virgo con los 12 signos: amor, amistad y energía zodiacal

Descubre 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ás
El algoritmo de YouTube explicado: cómo aumentar tus vistas

Tecnología > Redes Sociales

El algoritmo de YouTube explicado: cómo aumentar tus vistas

Descubre cómo funciona el algoritmo de YouTube y aprende estrategias efectivas para aumentar tus vistas, retención y suscriptores en 2025.

Leer más
Cáncer en la Vida Espiritual: Conexión interior y crecimiento personal

Astrología > Cáncer

Cáncer en la Vida Espiritual: Conexión interior y crecimiento personal

Explora cómo vive Cáncer la espiritualidad. Descubre su conexión con la intuición, la energía lunar y el desarrollo interior que guía su vida espiritual

Leer más