Organización y almacenaje

Arrays en PHP: qué son, cómo funcionan y cómo utilizarlos

6 min de lectura

Arrays en PHP: qué son, cómo funcionan y cómo utilizarlos

Los arrays en PHP son una de las estructuras de datos más utilizadas a la hora de desarrollar aplicaciones. Permiten almacenar varios valores dentro de una misma variable y acceder posteriormente a ellos de diferentes maneras.

En lugar de crear una variable independiente para cada dato, podemos agruparlos dentro de un array y recorrer, modificar, ordenar o buscar sus elementos cuando sea necesario.

¿Qué es un array en PHP?

Un array es una estructura que permite almacenar múltiples valores bajo una misma variable.

Por ejemplo, en lugar de hacer esto:

$fruta1 = "Manzana";
$fruta2 = "Naranja";
$fruta3 = "Plátano";

podemos agrupar todos los valores:

$frutas = ["Manzana", "Naranja", "Plátano"];

Ahora $frutas contiene los tres elementos.

La documentación oficial de PHP sobre arrays explica en detalle su funcionamiento.

¿Cómo crear un array?

Una de las formas más habituales de crear un array consiste en utilizar los corchetes:

$colores = ["Rojo", "Verde", "Azul"];

También podemos utilizar la construcción array():

$colores = array("Rojo", "Verde", "Azul");

La sintaxis con corchetes es la más habitual en código PHP moderno.

¿Cómo acceder a los elementos de un array?

Los elementos de un array indexado tienen una posición.

Por defecto, PHP comienza a contar desde 0.

Por ejemplo:

$frutas = ["Manzana", "Naranja", "Plátano"];

Las posiciones serían:

0 → Manzana
1 → Naranja
2 → Plátano

Para acceder a un elemento concreto podemos utilizar su índice:

echo $frutas[0];

El resultado será:

Manzana

También podemos acceder al segundo elemento:

echo $frutas[1];

que mostrará:

Naranja

Este sistema de índices es fundamental para trabajar con arrays.

Modificar un elemento

Los valores almacenados en un array pueden modificarse utilizando su índice.

Por ejemplo:

$frutas = ["Manzana", "Naranja", "Plátano"];

$frutas[1] = "Pera";

print_r($frutas);

Ahora el array contendrá:

Array
(
    [0] => Manzana
    [1] => Pera
    [2] => Plátano
)

De esta manera podemos cambiar elementos individuales sin tener que crear el array de nuevo.

Añadir elementos a un array

También podemos añadir nuevos valores.

Una forma sencilla consiste en utilizar []:

$frutas = ["Manzana", "Naranja"];

$frutas[] = "Plátano";

El array pasará a contener tres elementos.

También podemos añadir un valor utilizando funciones específicas como array_push():

$frutas = ["Manzana", "Naranja"];

array_push($frutas, "Plátano");

Para añadir un único elemento, utilizar [] suele ser una opción sencilla y directa.

Arrays asociativos

No todos los arrays tienen que utilizar números como índices.

PHP también permite crear arrays asociativos, en los que cada valor tiene una clave determinada.

Por ejemplo:

$persona = [
    "nombre" => "Antonio",
    "edad" => 30,
    "ciudad" => "Madrid"
];

En este caso podemos acceder a cada valor utilizando su clave:

echo $persona["nombre"];

El resultado será:

Antonio

También podemos hacer:

echo $persona["ciudad"];

y obtendremos:

Madrid

Los arrays asociativos son especialmente útiles cuando queremos representar información que tiene diferentes propiedades.

Modificar valores de un array asociativo

Al igual que ocurre con los arrays indexados, podemos cambiar sus valores.

Por ejemplo:

$persona = [
    "nombre" => "Antonio",
    "edad" => 30
];

$persona["edad"] = 31;

Ahora la clave edad tendrá el valor 31.

También podemos añadir una nueva clave:

$persona["profesion"] = "Programador";

El array tendrá entonces una propiedad adicional.

Recorrer un array con foreach

Cuando necesitamos trabajar con todos los elementos de un array, una de las estructuras más utilizadas es foreach.

Por ejemplo:

$frutas = ["Manzana", "Naranja", "Plátano"];

foreach ($frutas as $fruta) {
    echo $fruta . "<br>";
}

El resultado será:

Manzana
Naranja
Plátano

foreach resulta especialmente práctico porque permite recorrer todos los elementos sin tener que conocer previamente cuántos existen.

También podemos obtener la clave:

$frutas = ["Manzana", "Naranja", "Plátano"];

foreach ($frutas as $indice => $fruta) {
    echo $indice . ": " . $fruta . "<br>";
}

De esta forma podemos trabajar tanto con la posición como con el contenido.

Arrays multidimensionales

PHP también permite crear arrays que contienen otros arrays. Son los llamados arrays multidimensionales.

Por ejemplo:

$usuarios = [
    [
        "nombre" => "Antonio",
        "edad" => 30
    ],
    [
        "nombre" => "Laura",
        "edad" => 28
    ]
];

Podemos acceder a los datos combinando los índices:

echo $usuarios[0]["nombre"];

El resultado será:

Antonio

Este tipo de estructura permite representar conjuntos de datos más complejos.

Buscar elementos dentro de un array

PHP dispone de diferentes funciones para trabajar con arrays.

Una de ellas es in_array(), que permite comprobar si un determinado valor existe.

Por ejemplo:

$colores = ["Rojo", "Verde", "Azul"];

if (in_array("Verde", $colores)) {
    echo "El color existe";
}

En este caso se mostrará:

El color existe

También podemos utilizar array_search() cuando necesitamos conocer la clave o índice asociado a un valor.

Contar elementos

Para saber cuántos elementos contiene un array podemos utilizar count():

$frutas = ["Manzana", "Naranja", "Plátano"];

echo count($frutas);

El resultado será:

3

Esto resulta especialmente útil cuando necesitamos conocer el tamaño de una colección de datos.

Ordenar arrays

PHP incorpora numerosas funciones para ordenar arrays.

Por ejemplo, sort() permite ordenar los valores de un array en orden ascendente:

$numeros = [5, 2, 8, 1];

sort($numeros);

print_r($numeros);

El resultado será:

Array
(
    [0] => 1
    [1] => 2
    [2] => 5
    [3] => 8
)

También existen otras funciones como rsort(), asort() o ksort(), dependiendo de si queremos ordenar los valores, conservar las claves o utilizar las claves para establecer el orden.

Puedes consultar todas las posibilidades disponibles en la referencia oficial de funciones para arrays de PHP.

Eliminar elementos

También podemos eliminar elementos de un array.

Por ejemplo:

$frutas = ["Manzana", "Naranja", "Plátano"];

unset($frutas[1]);

Esto eliminará el elemento situado en el índice 1.

Es importante tener en cuenta que unset() elimina el elemento, pero no necesariamente reorganiza automáticamente los índices restantes.

Si necesitamos volver a crear índices consecutivos, podemos utilizar array_values().

Comprobar si una variable es un array

PHP proporciona la función is_array() para comprobar si una variable contiene un array.

Por ejemplo:

$frutas = ["Manzana", "Naranja"];

if (is_array($frutas)) {
    echo "La variable es un array";
}

Esto puede resultar útil cuando trabajamos con datos cuyo tipo no conocemos con seguridad.

Arrays en PHP frente a otros lenguajes

Una particularidad importante de PHP es que sus arrays son bastante flexibles.

Un array puede utilizar índices numéricos:

$numeros = [10, 20, 30];

o claves de texto:

$usuario = [
    "nombre" => "Antonio",
    "edad" => 30
];

También pueden combinarse diferentes tipos de claves y valores.

Esta flexibilidad hace que los arrays sean una herramienta muy utilizada en aplicaciones PHP, desde pequeños scripts hasta proyectos web completos.

¿Cuándo utilizar un array?

Los arrays resultan útiles prácticamente siempre que necesitamos trabajar con varios datos relacionados.

Por ejemplo, podemos utilizarlos para almacenar:

  • Una lista de productos.
  • Los nombres de varios usuarios.
  • Categorías.
  • Precios.
  • Resultados.
  • Datos procedentes de una base de datos.
  • Configuraciones.
  • Información estructurada.

La elección entre un array indexado, asociativo o multidimensional dependerá de cómo estén organizados los datos que queremos representar.

En resumen

Los arrays en PHP permiten almacenar múltiples valores dentro de una misma variable y trabajar con ellos de manera organizada.

Podemos crear un array sencillo:

$frutas = ["Manzana", "Naranja", "Plátano"];

Acceder a sus elementos:

echo $frutas[0];

Crear arrays asociativos:

$persona = [
    "nombre" => "Antonio",
    "edad" => 30
];

Y recorrerlos utilizando foreach:

foreach ($frutas as $fruta) {
    echo $fruta;
}

Además, PHP proporciona numerosas funciones para buscar, ordenar, contar, añadir, eliminar y modificar elementos.

Por todo ello, conocer cómo funcionan los arrays es fundamental para trabajar con PHP y para manejar correctamente colecciones de datos dentro de cualquier aplicación.

Productos recomendados

Seleccionados de nuestra tienda para este tema

Leave a comment

Carrito de compra

×

No hay productos en el carrito.