> Manuales > Manual de PHP

Creación de tablas por medio de variables tipo array. Utilidad de los arrays en lenguajes de programación en general y en PHP en particular, junto con algunas funciones relacionadas.

Un tipo de variable que ya hemos descrito pero puede ser relativamente complicado a asimilar, con respecto a la mayoría, son los arrays. En éste y otra serie de artículos del Manual de PHP vamos a abordar qué son los Arrays y cómo usarlos en el lenguaje PHP.

Como has podido entender antes, una variable generalmente almacena un dato, ya sea de tipo cadena, numérico, etc. Bueno, pues un array es como una variable capaz de almacenar un conjunto de datos. También los podemos conocer con el nombre de "arreglo", "tabla" o "matriz".

Dado que en array somos capaces de almacenar varios elementos, es necesario el uso de un índice para poder referirnos a cada uno de ellos. Ese índice a veces se conoce como "clave". Existen en PHP arrays con índices numéricos (los arrays más comunes) y con índices alfanuméricos (también llamados arrays asociativos, muy útiles, pero menos comunes), que veremos también en este artículo.

Arrays comunes, índices numéricos

En capítulos anteriores poníamos el ejemplo de un array llamado sentido que contenía los distintos sentidos del ser humano:

$sentido[1]="ver";
$sentido[2]="tocar";
$sentido[3]="oir";
$sentido[4]="gustar";
$sentido[5]="oler";

En este caso este array cataloga sus elementos, comúnmente llamados valores, por números. Los números del 1 al 5 son por lo tanto las claves y los sentidos ("tocar", "oir"...) son los valores asociados.

Arrays asociativos

Si lo deseamos, es posible emplear nombres (cadenas) para clasificar los elementos del array. Lo único que deberemos hacer es entrecomillar las llaves alfanuméricas y entonces tendremos un array asociativo:

$moneda["espana"]="Peseta";
$moneda["francia"]="Franco";
$moneda["usa"]="Dolar";

Otra forma de definir idénticamente este mismo array y que nos puede ayudar para la creación de arrays más complejos es la siguiente sintaxis:

<?
$moneda=array("espana"=> "Peseta","francia" => "Franco","usa" => "Dolar");
?>

Arrays multidimensionales

Una forma muy practica de almacenar datos es mediante la creación de arrays multidimensionales (tablas o matrices con más de una dimensión). Pongamos el ejemplo siguiente: Queremos almacenar dentro de una misma tabla el nombre, moneda y lengua hablada en cada país. Para hacerlo podemos emplear un array llamado país que vendrá definido por estas tres características (claves). Para crearlo, deberíamos escribir una expresión del mismo tipo que la vista anteriormente en la que meteremos una array dentro del otro. Este proceso de incluir una instruccion dentro de otra se llama anidar y es muy corriente en programación:

<?
$pais=array
(
"espana" =>array
   (
   "nombre"=>"España",
   "lengua"=>"Castellano",
   "moneda"=>"Peseta"
   ),
"francia" =>array
   (
   "nombre"=>"Francia",
   "lengua"=>"Francés",
   "moneda"=>"Franco"
   )
);
echo $pais["espana"]["moneda"] //Saca en pantalla: "Peseta"
?>

Antes de entrar en el detalle de este pequeño script, comentemos algunos puntos referentes a la sintaxis.

Pasando ya al comentario del programa, como podéis ver, éste nos permite almacenar tablas y, a partir de una simple petición, visualizarlas un determinado valor en pantalla.

La utilidad de los arrays en lenguajes de programación es enorme. Con ellos se resuelven todo tipo de necesidades: contar con estructuras de datos que nos permitan realizar determinados tipos de acciones y realizar algoritmos capaces de resolver de una manera elegante la más variada gama de procedimientos.

Funciones de Array en PHP

PHP incluye un nutrido conjunto de funciones para trabajar con Arrays. En ellas nos podemos apoyar para realizar toda una serie de operaciones típicas como ordenar elementos por orden alfabético directo o inverso, por claves, contar el numero de elementos que componen el array además de poder movernos por dentro de él hacia delante o atrás.

Muchas son las funciones propuestas por PHP para el tratamiento de arrays, no vamos a entrar aquí en una descripción de las mismas. Sólo incluiremos esta pequeña tabla que puede ser complementada, si necesario, con la documentación que ya hemos mencionado.

De gran utilidad es también el bucle foreach que recorre de forma secuencial el array de principio a fin.

Para complementar esta información resultará de gran interés el artículo Trabajo con tablas o arrays en PHP y para los que prefieran la formación en vídeo, recomendamos ver los videotutoriales sobre los arrays en PHP. Más adelante, cuando leas sobre las estructuras de control en el Manual de PHP, también encontrarás diversos ejemplos de recorridos a arrays.

Rubén Alvarez

Rubén es doctor en química y programador aficionado con experiencia en PHP.

Manual