W3docs

array()

La función array() en PHP crea un array. Aprende los tres tipos, la sintaxis corta [], y las operaciones más comunes con ejemplos ejecutables.

Introducción

La construcción de lenguaje array() crea un array de PHP — un mapa ordenado que empareja claves con valores. A pesar del nombre "array", un array de PHP es mucho más flexible que un array de tamaño fijo en lenguajes como C o Java: un solo array puede contener tipos de valores mixtos, crecer o reducirse en tiempo de ejecución, y usar enteros o cadenas como claves.

Esta página explica cómo funciona array(), los tres tipos de arrays que puedes crear con él, la sintaxis corta moderna [], y las operaciones cotidianas (contar, añadir, iterar) que usarás con más frecuencia. Cada ejemplo es ejecutable.

Sintaxis básica

array(value1, value2, value3, ...)
// or, since PHP 5.4, the short syntax:
[value1, value2, value3, ...]

También puedes asignar claves de forma explícita con la flecha key => value:

array(key1 => value1, key2 => value2, ...)

Ambas formas devuelven un valor de tipo array. Las dos sintaxis son intercambiables; la forma corta [] es la preferida en el código moderno.

Crear un array

php— editable, runs on the server

Cuando no se proporcionan claves, PHP asigna claves enteras secuenciales comenzando desde 0. Así, $fruits[0] es "apple", $fruits[1] es "banana" y $fruits[2] es "orange". Esto es un array indexado.

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)

Los tres tipos de arrays

PHP usa una sola estructura de datos, array, para tres formas conceptuales:

Arrays indexados

Las claves son enteros asignados automáticamente. Úsalos para listas ordenadas donde solo importa la posición.

<?php
$colors = ["red", "green", "blue"];
echo $colors[1]; // green

Consulta arrays indexados para más información.

Arrays asociativos

Tú eliges claves string para etiquetar cada valor, lo que es ideal para registros y búsquedas.

<?php
$user = [
    "name"  => "Ada",
    "email" => "[email protected]",
    "age"   => 36,
];

echo $user["email"]; // [email protected]

Consulta arrays asociativos para más información.

Arrays multidimensionales

Un valor puede ser a su vez un array, lo que permite modelar tablas y datos anidados.

<?php
$matrix = [
    [1, 2, 3],
    [4, 5, 6],
];

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

Consulta arrays multidimensionales para más información.

Contar elementos

La función count() devuelve cuántos elementos de nivel superior contiene un array. Se combina de forma natural con array():

<?php

$fruits = array("apple", "banana", "orange");

echo count($fruits); // 3

Añadir elementos

Para agregar un valor al final, usa la sintaxis [] — es más corta que llamar a array_push() y más clara para un solo elemento:

<?php
$fruits = ["apple", "banana"];

$fruits[] = "cherry";       // appended with the next integer key (2)
$fruits["fav"] = "mango";   // added with an explicit string key

print_r($fruits);
Array
(
    [0] => apple
    [1] => banana
    [2] => cherry
    [fav] => mango
)

Esta mezcla de claves enteras y string en un mismo array es perfectamente válida — es lo que convierte a los arrays de PHP en "mapas ordenados".

Recorrer un array

foreach es la forma idiomática de recorrer cada par clave/valor, y funciona con los tres tipos de arrays:

<?php
$user = ["name" => "Ada", "age" => 36];

foreach ($user as $key => $value) {
    echo "$key: $value\n";
}
name: Ada
age: 36

Consulta el bucle foreach para la referencia completa.

Errores comunes

  • Las claves duplicadas se sobreescriben. [1 => "a", 1 => "b"] conserva solo "b" — gana el último valor asignado a una clave.
  • Las claves string que parecen enteros se convierten en enteros. ["7" => "x"] se almacena bajo la clave entera 7, por lo que $a[7] y $a["7"] acceden al mismo elemento.
  • Acceder a una clave inexistente emite una advertencia y devuelve null. Protégete con array_key_exists() o isset() primero.
  • El conteo solo cuenta el nivel superior. count() en un array multidimensional devuelve el número de elementos externos, no el recuento total de hojas.

Buenas prácticas

  • Prefiere la sintaxis corta [] sobre array() en código nuevo — es la convención moderna.
  • Usa claves string significativas para datos asociativos, de modo que el código se lea como el dominio que modela.
  • Agrega elementos con $arr[] = ... en lugar de array_push() cuando añadas un solo valor.
  • Ordena con la función adecuada para tu tipo de clave — consulta ordenar arrays para sort(), asort(), ksort() y similares.

Conclusión

La construcción array() (y su abreviatura []) es la base del manejo de datos en PHP. Dado que un mismo tipo de array funciona como lista indexada, mapa asociativo y árbol anidable, dominar la creación, el conteo, la adición y la iteración desbloquea la mayor parte del conjunto de herramientas de manipulación de datos del lenguaje.

Práctica

Práctica
¿Cuáles son los tipos principales de arrays en PHP?
¿Cuáles son los tipos principales de arrays en PHP?
Was this page helpful?