Manejo de Arrays — parte 1

Intermedio
PHP
PHP
Actualizado: 19/04/2026

Diagrama del tema

Arrays indexados

Los arrays indexados en PHP son una estructura de datos que permite almacenar múltiples valores en una única variable. Cada elemento está asociado a un índice numérico, comenzando por defecto en 0. Son muy útiles para manejar listas ordenadas de elementos sin necesidad de crear variables independientes para cada uno.

Para declarar un array indexado, podemos utilizar la sintaxis de corchetes [] o la función array(). Por ejemplo:

<?php

// Usando corchetes
$frutas = ["Manzana", "Plátano", "Cereza"];
print_r($frutas);

// Usando la función array()
$numeros = array(10, 20, 30);
print_r($numeros);

Los elementos de un array indexado se acceden mediante su índice numérico entre corchetes. El primer elemento tiene el índice 0, el segundo el 1, y así sucesivamente. Por ejemplo:

<?php

echo "$frutas[0]\n"; // Muestra "Manzana"
echo "$numeros[1]\n"; // Muestra "20"

Podemos añadir nuevos valores a un array indexado especificando el índice o dejando que PHP asigne el siguiente índice disponible automáticamente. Añadir un elemento sin especificar el índice:

<?php

$frutas[] = "Durazno"; // Se añade al final del array

Asignar un valor a un índice específico nos permite controlar la posición del elemento en el array:

<?php

$numeros[5] = 50; // Asigna el valor 50 al índice 5

Si asignamos un valor a un índice mayor que los existentes, PHP rellena los índices intermedios con NULL. Por ejemplo:

<?php

$letras = [];
$letras[3] = "D"; // $letras[0], $letras[1], $letras[2] son NULL

Es posible inicializar un array indexado con índices personalizados desde el inicio:

<?php

$meses = [
    1 => "Enero",
    2 => "Febrero",
    3 => "Marzo",
];

Cuando mezclamos asignaciones automáticas y manuales de índices, es importante comprender cómo PHP gestiona los índices. Si utilizamos índices numéricos no secuenciales, el siguiente índice automático será el mayor índice entero existente más uno.

Los arrays indexados pueden contener valores de distintos tipos, como enteros, cadenas o booleanos. Esto proporciona flexibilidad al manejar conjuntos de datos heterogéneos.

Para modificar el valor de un elemento existente en un array indexado, simplemente asignamos un nuevo valor al índice correspondiente:

<?php

$frutas[0] = "Mango"; // Reemplaza "Manzana" por "Mango"

Arrays asociativos

Los arrays asociativos en PHP son estructuras que permiten almacenar pares de clave y valor, donde las claves son identificadores únicos que pueden ser cadenas de texto o enteros. A diferencia de los arrays indexados que utilizan índices numéricos consecutivos, los arrays asociativos ofrecen una manera más descriptiva de acceder a los valores almacenados.

Para declarar un array asociativo, se puede utilizar la sintaxis de corchetes [] asignando cada clave a su correspondiente valor usando el operador =>. Por ejemplo:

<?php

$empleado = [
    "nombre" => "Carlos",
    "apellido" => "Pérez",
    "edad" => 28,
    "departamento" => "Ventas"
];

$precios = [
    "manzana" => 0.5,
    "naranja" => 0.75,
    "plátano" => 0.4
];

En el ejemplo anterior, $empleado y $precios son arrays asociativos donde las claves proporcionan una descripción clara del valor asociado. Esto mejora la legibilidad y facilita el mantenimiento del código.

Para acceder a los elementos de un array asociativo, se utiliza la clave correspondiente entre corchetes:

<?php

echo "{$empleado['nombre']}\n";      // Muestra "Carlos"
echo "{$precios['naranja']}\n";      // Muestra "0.75"

Es posible añadir nuevos elementos asignando un valor a una nueva clave:

<?php

$empleado["salario"] = 30000;
$precios["pera"] = 0.6;

Si se necesita modificar el valor de una clave existente, simplemente se reasigna un nuevo valor:

<?php

$empleado["edad"] = 29;
$precios["manzana"] = 0.55;

Para eliminar un elemento de un array asociativo, se utiliza la función unset() pasando la clave del elemento que se desea remover:

<?php

unset($empleado["departamento"]);
unset($precios["plátano"]);

Los arrays asociativos son especialmente útiles cuando se trabaja con datos que tienen una relación clave-valor evidente, como registros de bases de datos o configuraciones:

<?php

$configuracion = [
    "base_datos" => "mi_basedatos",
    "usuario" => "admin",
    "contraseña" => "secreto"
];

Al utilizar arrays asociativos, se mejora la claridad en el acceso y manipulación de los datos, ya que las claves proporcionan un contexto significativo.

Para recorrer un array asociativo, se puede emplear el bucle foreach, que facilita la iteración sobre cada par clave-valor:

<?php

foreach ($empleado as $clave => $valor) {
    echo "$clave: $valor\n";
}

Este código mostrará:

nombre: Carlos
apellido: Pérez
edad: 29
salario: 30000

Es importante notar que las claves de un array asociativo son sensibles a mayúsculas y minúsculas, lo que significa que "Nombre" y "nombre" se consideran claves diferentes.

Algunas funciones útiles para trabajar con arrays asociativos incluyen:

  • array_keys(): retorna un array con todas las claves.
  • array_values(): retorna un array con todos los valores.
  • array_key_exists(): verifica si una clave específica existe en el array.
  • isset(): determina si una clave está definida y su valor no es NULL.

Ejemplo de uso de estas funciones:

<?php

$claves = array_keys($precios);
$valores = array_values($precios);

if (array_key_exists("pera", $precios)) {
    echo "El precio de la pera es: {$precios['pera']}\n";
}

if (isset($empleado["departamento"])) {
    echo "Departamento: {$empleado['departamento']}\n";
} else {
    echo "El departamento no está definido.\n";
}

Los arrays asociativos pueden ser combinados con arrays multidimensionales para crear estructuras de datos más complejas y anidadas. Esto permite representar datos en forma de tablas o registros con múltiples niveles de profundidad.

Por ejemplo, un array asociativo dentro de otro array asociativo:

<?php

$usuarios = [
    "usuario1" => [
        "nombre" => "Laura",
        "correo" => "laura@example.com"
    ],
    "usuario2" => [
        "nombre" => "José",
        "correo" => "jose@example.com"
    ]
];

echo "{$usuarios['usuario1']['correo']}\n"; // Muestra "laura@example.com"

En resumen, los arrays asociativos ofrecen una forma flexible y util de manejar conjuntos de datos donde las claves descriptivas mejoran la comprensión y manipulación de la información en las aplicaciones PHP.

Alan Sastre - Autor del tutorial

Alan Sastre

Ingeniero de Software y formador, CEO en CertiDevs

Ingeniero de software especializado en Full Stack y en Inteligencia Artificial. Como CEO de CertiDevs, PHP es una de sus áreas de expertise. Con más de 15 años programando, 6K seguidores en LinkedIn y experiencia como formador, Alan se dedica a crear contenido educativo de calidad para desarrolladores de todos los niveles.

Más tutoriales de PHP

Explora más contenido relacionado con PHP y continúa aprendiendo con nuestros tutoriales gratuitos.

Aprendizajes de esta lección

Entender qué son los arrays indexados y cómo funcionan. Declarar arrays indexados usando corchetes y la función array(). Acceder y modificar elementos a través de su índice. Añadir valores automáticamente y manualmente con índices específicos. Gestionar índices numéricos consecutivos y faltantes. Declarar y manipular arrays asociativos con pares clave-valor.

Cursos que incluyen esta lección

Esta lección forma parte de los siguientes cursos estructurados con rutas de aprendizaje