1. Tabla numérica
Una tabla es como una variable, pero puede almacenar varios valores.
Una tabla se define con una clave (llamada índice) y un valor:
Para crear esta tabla, escriba lo siguiente:
<?php
$tabla = array(’Juan’,’Roberto’,’Pablo’,’Pedro’,’Alonso’);
?>
Aquí la tabla se denomina $tabla, pero la puede llamar de cualquier otra manera.
También puede acceder directamente al valor de una tabla a través de su índice, con la siguiente sintaxis:
<?php
echo $tabla[0];
?>
Da como resultado:
Juan
En efecto, $tabla[x] es una variable que tiene como valor el segundo elemento de la tabla.
Atención: los índices de las tablas comienzan desde 0.
Para sustituir la cadena de caracteres ’Roberto’ por ’Nadia’ en el índice 1 de la tabla, escriba:
<?php
$tabla[1] = ’Nadia’;
?>
También puede crear una tabla vacía y rellenarla de la siguiente manera:
<?php
$tabla = array();
$tabla[0] = ’Juan’;
$tabla[1] = ’Roberto’;
$tabla[2] = ’Pablo’;
$tabla[3] = ’Pedro’;
$tabla[4] = ’Alonso’;
?>
O bien de esta manera:
<?php
$tabla = array();
$tabla[] = ’Juan’;
$tabla[] = ’Roberto’;
$tabla[] = ’Pablo’;
$tabla[] = ’Pedro’;
$tabla[] = ’Alonso’;
?>
O incluso:
< ?php
$tabla = [’Juan’,’Roberto’, ’Pablo’,’Pedro’,’Alonso’] ;
?>
PHP rellena automáticamente los índices, que es lo mismo que escribir:
<?php
$tabla = array(’Juan’,’Roberto’,’Pablo’,’Pedro’,’Alonso’);
?>
2. Tabla asociativa
En un tabla asociativa puede decidir la clave que va a introducir.
Por ejemplo:
En este ejemplo la clave puede tomar cualquier valor; no tiene que ser necestariamente un número.
Este tipo de tabla se escribe de la siguiente manera:
<?php
$tabla = array(’A1’=>’Juan’,’B4’=>’Roberto’,3=>’Pablo’,’PEPE’=>’Pedro’,
’H’=>’Alonso’);
?>
La asociación se escribe con los símbolos =>. El primero es la clave y el segundo, el valor.
Otra forma de completar esta tabla es:
<?php
$tabla = array();
$tabla[’A1’] = ’Juan’;
$tabla[’B4’] = ’Roberto’;
$tabla[3] = ’Pablo’;
$tabla[’Pepe’] = ’Pedro’;
$tabla[’H’] = ’Alonso’;
?>
Puede utilizar esta tabla cuando la clave tiene una información importante.
Por ejemplo, si quiere almacenar las características de una persona en una tabla $persona, escriba:
<?php
$persona = array();
$persona[’Apellido’] = ’Martín’;
$persona[’Nombre’] = ’Mónica’;
$persona[’Edad’] = 50;
?>
A continuación, si quiere mostrar la edad, escriba:
<?php
echo $persona[’Edad’];
?>
3. Recorrido de una tabla
Existen varias soluciones para recorrer una tabla.
- a. El bucle for
<?php
//creación de la tabla
$tabla = array(’Juan’,’Roberto’,’Pablo’,’Pedro’,’Alonso’);
//bucle en la tabla
for ($i = 0; $i < 5; $i++) {
//mostrar los valores concatenados de la tabla
//con un salto de línea
echo $tabla[$i].’<br />’;
}
?>
Este ejemplo muestra:
Juan
Roberto
Pablo
Pedro
Alonso
Por tanto, $i varía de 0 a 4, el bucle muestra $tabla[0], cuyo valor es ’Juan’, $tabla[1], cuyo valor es ’Roberto’, etc.
Algunas veces los elementos de una base de datos se recuperan en una tabla y no se puede saber con antelación el número de elementos que contiene esta tabla. Si desconoce el tamaño de la tabla, puede usar las funciones count() o sizeof(), que se detallan más adelante.
Por ejemplo:
<?php
//creación de la tabla
$tabla = array(’Juan’,’Roberto’,’Pablo’,’Pedro’,’Alonso’);
//bucle en los registros de la tabla
for ($i = 0; $i < sizeof($tabla); $i++) {
//muestra los valores concatenados de la tabla
//con un salto de línea
echo $tabla[$i].’<br />’;
}
?>
Este ejemplo muestra lo siguiente:
Juan
Roberto
Pablo
Pedro
Alonso
- b. El bucle foreach
El bucle foreach no usa un contador. Almacena de uno en uno los valores de la tabla en una variable temporal, que en el siguiente ejemplo es $val. Puede dar a esta variable el nombre que quiera y no necesita definirla.
<?php
//creación de la tabla
$tabla = array(’Juan’,’Roberto’,’Pablo’,’Pedro’,’Alonso’);
//bucle en la tabla
foreach ($tabla as $val) {
//muestra los valores concatenados de la tabla
//con un salto de línea
echo $val.’<br />’;
}
?>
Da como resultado:
Juan
Roberto
Pablo
Pedro
Alonso
Este bucle tiene otra ventaja: también permite mostrar la clave de la tabla:
<?php
//creación de la tabla
$tabla = array(’A1’=>’Juan’,’B4’=>’Roberto’,3=>’Pablo’,’Pepe’=>’Pedro’,
’H’=>’Alonso’);
//bucle en la tabla
foreach ($tabla as $clave => $val) {
//muestra los valores concatenados de la tabla
//con un salto de línea
echo ’Clave:’.$clave.’, valor:’.$val.’<br />’;
}
?>
Da como resultado:
Clave:A1, valor:Juan
Clave:B4, valor:Roberto
Clave:3, valor:Pablo
Clave:Pepe, valor:Pedro
Clave:H, valor:Alonso
El bucle foreach se escribe con la variable $clave (aunque le puede dar cualquier otro nombre), y contiene la clave de la tabla, así como el signo => y la variable $val, que contiene el valor correspondiente a la clave.
También puede utilizar el bucle foreach sin la clave, como muestra el siguiente ejemplo:
<?php
//creación de la tabla
$tabla = array(’A1’=>’Juan’,’B4’=>’Roberto’,3=>’Pablo’,’Pepe’=>’Pedro’,
’H’=>’Alonso’);
//bucle en la tabla
foreach ($tabla as $val) {
//muestra los valores concatenados de la tabla
//con un salto de línea
Echo ’valor:’.$val.’<br />’;
}
?>
Da como resultado:
valor:Juan
valor:Roberto
valor:Pablo
valor:Pedro
valor:Alonso
- c. print_r
Ejemplo:
<?php
//creación de la tabla
$tabla = array(’A1’=>’Juan’,’B4’=>’Roberto’,3=>’Pablo’,’Pepe’=>’Pedro’,
’H’=>’Alonso’);
print_r($tabla);
?>
Da como resultado:
Array ( [A1] => Juan [B4] => Roberto [3] => Pablo [Pepe] => Pedro [H] => Alonso)
Espero haber ayudado en algo. Hasta la próxima oportunidad!
Twittear
No hay comentarios:
Publicar un comentario