English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial básico de PHP

Tutorial avanzado de PHP

PHP & MySQL

Manual de Referencia PHP

Arreglos de PHP

En este tutorial, aprenderás a almacenar múltiples valores en una única variable en PHP.

¿Qué es un array en PHP

Los arrays son variables complejas que nos permiten almacenar múltiples valores o un grupo de valores bajo un nombre de variable único. Supongamos que quieres almacenar colores en un script PHP, almacenarlos uno a uno en variables podría verse así:

<?php
$color1 = "Red";
$color2 = "Green";
$color3 = "Blue";
echo $color1;
echo "<br>";
echo $color2;
echo "<br>";
echo $color3;
?>
Prueba a ver‹/›

Pero, si quieres almacenar el nombre/Si los nombres de los estados o ciudades de una región se almacenan en variables, esta vez no podrían ser tres, sino cientos. Almacenar el nombre de cada ciudad en una variable separada es una práctica difícil, mala e imprudente. Aquí es donde entran en juego los arrays.

Tipos de array en PHP

Puedes crear tres tipos de arrays. Estos son:

  • Array de índices — Un array con claves numéricas.

  • Array asociativo — Un array donde cada clave tiene un valor específico.

  • Array multidimensional — Un array que contiene uno o más arrays.

Array de índices

Un array de índices o de números almacena cada elemento del array que tiene un índice numérico. El siguiente ejemplo muestra dos métodos para crear un array de índices, el más simple es:

<?php
//Definir un array de índices
$colors = array("Red", "Green", "Blue");
// Imprimir estructura de array
print_r($colors);
?>
Prueba a ver‹/›

Nota:En un array de índices o de números, se asignan índices automáticamente y comienzan en 0, y los valores pueden ser de cualquier tipo.

Esto es equivalente al siguiente ejemplo, donde se asignan manualmente los índices:

<?php
$colors[0] = "Red"; 
$colors[1] = "Green"; 
$colors[2] = "Blue"; 
// Imprimir estructura de array
print_r($colors); 
?>
Prueba a ver‹/›

Array asociativo

En un array asociativo, la clave asignada al valor puede ser arbitraria y una cadena definida por el usuario. En el siguiente ejemplo, el array utiliza claves en lugar de números de índice:

<?php
//Definir un array asociativo
$ages = array("Peter"=>22, "Clark"=>32, "John"=>28);
// Imprimir estructura de array
print_r($ages); 
?>
Prueba a ver‹/›

El siguiente ejemplo es equivalente al anterior, pero muestra otra forma de crear un array asociativo:

<?php
$ages["Peter"] = ""22";
$ages["Clark"] = "32";
$ages["John"] = "28";
// Imprimir estructura de array
print_r($ages);
?>
Prueba a ver‹/›

Array multidimensional

Un array multidimensional es un array en el que cada elemento también puede ser un array, cada elemento del subarray puede ser un array, o puede contener otro array dentro de él, y así sucesivamente. Ejemplo de array multidimensional:

<?php
//Definir array multidimensional
$contacts = array(
    array(
        "name" => "Peter Parker",
        "email" => "[email protected]",
    ),
    array(
        "name" => "Clark Kent",
        "email" => "[email protected]",
    ),
    array(
        "name" => "Harry Potter",
        "email" => "[email protected]",
    )
);
//Acceder a valores anidados
echo "El correo electrónico de Peter Parker id es: " . $contacts[0]["email"];
?>
Prueba a ver‹/›

Ver la estructura y valores del array

Puedes usar una de las dos sentencias var_dump() o print_r() para ver la estructura y valores de cualquier array. Sin embargo, la sentencia print_r() proporciona menos información. Mira el siguiente ejemplo:

<?php
//Definir array
$cities = array("London", "Paris", "New York");
 
//Mostrar array de ciudades
print_r($cities);
?>
Prueba a ver‹/›

La sentencia print_r() proporciona la siguiente salida:

Array ( [0] => London [1] => Paris [2] => New York )

Esta salida muestra las claves y valores de cada elemento del array. Para obtener más información, utiliza la siguiente sentencia:

<?php
//Definir array
$cities = array("London", "Paris", "New York");
 
//Mostrar array de ciudades
var_dump($cities);
?>
Prueba a ver‹/›

La sentencia var_dump() proporciona la siguiente salida:

array(3) { [0]=> string(6) "London" [1=> string(5) "Paris" [2=> string(8) "New York" }

Además de las claves y valores, esta salida también muestra el tipo de datos de cada elemento, por ejemplo6una cadena de caracteres de un carácter. EnEl siguiente capítulo,Aprenderás a ordenar los elementos del array.

EnCapítulo de bucleAquí, aprenderás a recorrer los valores del array.