Un array es una zona de almacenamiento que asocia valores con claves compuesta de elementos ordenados, según la documentación oficial de PHP, puede ser usado como “una matriz real, una lista (vector), una tabla asociativa (una implementación de un mapa), diccionario, colección, pila, cola, y posiblemente más”.

Para crear un array utilizamos el constructor “array()” y le asignamos un número de parejas de “clave => valor” como argumentos.

Ejemplo

$z = array(1,2,3,4,5);
$z = array(1 => 'uno',2 => 'dos',3 => 'tres',4 => 'cuatro',5 => 'cinco');

A partir de PHP 5.4 podemos usar la misma sintaxis para crear arrays que en C, C++ o Java “[ ]”

$z = [1,2,3,4,5]

Al igual que en otros lenguajes como C o C++, PHP utiliza la indexación base 0, es decir, el primer elemento de una array es 0, el segundo el 1 y así sucesivamente, es muy recomendable acostumbrarse a trabajar de esta forma, aunque podemos asignar la posición 1 al primer valor para indexarlo desde la primera posición de esta forma:

Ejemplo

$z = [1 => 'uno','dos', 'tres', 'cuatro', 'cinco']

Tipos de valores

En algunos lenguajes de programación como C, C++ o Java los valores tienen que ser del mismo tipo, en PHP no es necesario que los valores sean del mismo tipo.

Ejemplo

$cuatro = 'cuatro';
$cinco = 5;
$z = array(1,'dos',3,$cuatro,$cinco);

Array numérico indexado

En un array de este tipo, accedemos a las posiciones de los elementos asignando un numero entero a cada posición del array.

Ejemplo

$x = array("Cero", "Uno", "Dos");
echo . $x[0] . ", " . $x[1] . ", " . $x[2] . ".";

Array asociativo

En un array de este tipo, accedemos a las posiciones de los elementos (valores) asociandolas a un clave

Ejemplo

$x = array(0 => 'Cero', 1 => 'uno', 2 => 'Dos',);
echo $x[0] . ", " . $x[1] . ", " . $x[2] . ".";

Array multidimensional

Un array multidimensional se puede definir como un array de arrays, en este tipo de array accedemos a los elementos indicando en primer lugar la posición del array y en segundo lugar la posicion del elemento dentro del array, Los arrays multidimensionales en PHP acentan varios niveles de profundidad, aunque no es aconsejable utilizar arrays multidimensinales de mas de tres niveles de profundidad, los mas usados son el bidimensional y el tridimensional (2 y 3 niveles respectivamente)

Ejemplo bidimensional

$x = array (
	array("Posicion 0","POSICION 1","Posicion 2"),
	array("Posicion 0","Posicion 1","Posicion 2"),
	array("Posicion 0","Posicion 1","POSICION 2"),
);
echo $x[0][1].'<br>';
echo $x[2][2];

Ejemplo tridimensional

$x = array (
	array(
		array("Posicion 0","POSICION 1","Posicion 2"),
		array("Posicion 0","Posicion 1","Posicion 2"),
		array("Posicion 0","Posicion 1","Posicion 2")
	),
	array(
		array("Posicion 0","Posicion 1","Posicion 2"),
		array("Posicion 0","Posicion 1","Posicion 2"),
		array("Posicion 0","Posicion 1","POSICION 2")
	),
);
echo $x[0][0][1].'<br>';
echo $x[1][2][2];

Funciones

Existen decenas de funciones en PHP para trabajar con arrays, en la web de W3Schools puedes encontrar un listado con las funciones más comunes para trabajar con arrays, comprueba antes de crear una función si ya existe una función en PHP que realice la tarea que quieres llevar a cabo con un array, hay muchas funciones disponibles.
Puedes encontrar más información sobre arrays en la Documentación oficial de PHP.

Por ultimo he creado un ejemplo muy sencillo para controlar mediante un archivo PHP todo el contenido principal de una plantilla, cuando trabajamos con proyectos muy grandes con muchos documentos y carpetas, puede ser muy complicado cambiar determinados textos o recursos en todos los archivos de la página, con este recurso podemos realizar esta tarea desde un unico archivo

index.php

<?php
include "textos.php";
?>
<!DOCTYPE HTML>
<html lang="es">
<head>
	<meta charset="UTF-8">
	<title>Didesweb</title>
	<link rel="stylesheet" href="style.css">
</head>
<body>
	<h4 class="<?php echo $estilos["enlaces_normales"];?>">
	<?php echo $titulos["enc_1"];?>
	</h4>
	<h5 class="<?php echo $estilos["enlaces_destacados"];?>">
	<?php echo $titulos["enc_2"];?>
	</h5>
	<ul>
		<li>
		<a class="
		<?php echo $estilos["enlaces_normales"];?>" href="">
		<?php echo $enlaces["link_1"];?>
		</a>
		</li>
		<li>
		<a class="
		<?php echo $estilos["enlaces_destacados"];?>" href="">
		<?php echo $enlaces["link_2"];?>
		</a>
		</li>
	</ul>
</body>
</html>

textos.php

<?php
$titulos=array(
'enc_1'=>"Titulo Grande",
'enc_2'=>"Titulo pequeño",
);
$enlaces=array(
'link_1'=>"Enlace 1",
'link_2'=>"Enlace 2",
);
$estilos=array(
'enlaces_normales'=>"enlaces",
'enlaces_destacados'=>"enlaces_dest",
);
?>

style.css

.enlaces { color: blue;}
.enlaces_dest { color: red;}

Aunque es un ejemplo muy sencillo es un recurso muy potente en un proyecto grande, donde puedes implementar arrays para controlar por ejemplo los enlaces que son comunes en todo el documento y aparecen en diferentes archivos o cualquier cosa que necesites modificar con frecuencia.

Puedes ver el código de este archivo en mi cuenta de GitHub.

Valoraciones


Sé el primero en valorar

* Tu valoración puede tardar hasta 72 horas en publicarse.

He leido y acepto el Aviso legal y condiciones de uso

Utilizamos cookies propias y de terceros para personalizar el contenido y los anuncios, ofrecer funciones de medios sociales y analizar el tráfico. Además compartimos información sobre el uso que haces de nuestra web con nuestros partners de medios sociales, de publicidad y de análisis web. Si continúas navegando estás dando tu consentimiento para la aceptación de nuestra Política de cookies.

ACEPTAR
Aviso de cookies