A partir de ahora podemos recuperar
cualquier valor
específico refiriéndonos a su
índice.
Por ejemplo para presentar el nombre de la
segunda ciudad podríamos escribir simplemente
Como haríamos con cualquier otra
variable.
ARRAYS
DINÁMICAMENTE
También podemos crear arrays
dinámicamente, sencillamente agregando nuevos valores.
Ejemplo 1
AGREGÁNDOSE EL VALOR AL
ARRAY.
Naturalmente por este mismo sistema
también podemos modificar el valor de un array dado, e
incluso añadir valores sin asignar índice, que
será agregado automáticamente por php:
De tal forma que podemos acceder a este
valor utilizando $mis_ciudades[4]
Ejemplo 2
Array llamado sentido que contiene los
distintos sentidos del ser humano:
$sentido[1]="ver";$sentido[2]="tocar";$sentido[3]="oír";$sentido[4]="gustar";$sentido[5]="oler"; |
Explicación
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
son los
valores asociados.
Ejemplo 2
Nada nos impide emplear nombres
(cadenas) para clasificarlos. Lo único que deberemos
hacer es colocarlo entrecomillarlos:
Funciones de
array
Lo que es interesante es que la
utilidad
de los arrays no acaba aquí, sino que también
podemos utilizar toda una serie de funciones
creadas para ordenarlos 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
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.
Función | Descripción |
array_values (mi_array) | Lista los valores contenidos en |
asort(mi_array) y | Ordena por orden alfabético |
count(mi_array) | Nos da el numero de elementos de |
ksort(mi_array) y | Ordena por orden alfabético |
list ($variable1, | Asigna cada una variable a cada uno |
next(mi_array), prev(mi_array), | Nos permiten movernos por dentro del |
each(mi_array) | Nos da el valor y la clave del |
Recomendación
De gran utilidad es también el
bucle foreach
que recorre de forma secuencial el array de principio a
fin.
Vemos algunas de las funciones
típicas del trabajo con
arrays a través de una pequeña explicación y
un ejemplo de uso.
Vamos a ver varios ejemplos de trabajo con
arrays (arreglos, vectores,
matrices o
tablas en castellano) en
PHP que ilustrarán un poco el funcionamiento de algunas de
las funciones de arrays más populares que trae consigo
PHP. Sin más, vamos a introducirnos en materia con
varios ejemplos interesantes de manejo de
vectores.
Modificar el número de
elementos de un array Ahora vamos a ver varios ejemplos
mediante los cuales nuestros arrays pueden aumentar o reducir el
número de casillas disponibles. Reducir el
tamaño de un array
array_slice()
Para disminuir el número de
casillas de un arreglo tenemos varias funciones.Entre ellas, array_slice() la
utilizamos cuando queremos recortar algunas casillas del
arreglo, sabiendo los índices de las casillas que
deseamos conservar.Recibe tres
parámetros.El array, el índice del primer
elemento y el número de elementos a tomar, siendo este
último parámetro opcional.En el ejemplo siguiente tenemos un
array con cuatro nombres propios.En la primera ejecución de
array_slice() estamos indicando que deseamos tomar todos los
elementos desde el índice 0 (el principio) hasta un
número total de 3 elementos.El segundo array_slice() indica que se
tomen todos los elementos a partir del índice 1
(segunda casilla).
Ejemplo 1
Resultados
Tendrá como salida:
Miguel
Pepe
Juan
Pepe
Juan
array_shift()
Esta función extrae el primer
elemento del array y lo devuelve.Además, acorta la longitud del
array eliminando el elemento que estaba en la primera
casilla.Siempre hace lo mismo, por tanto, no
recibirá más que el array al que se desea
eliminar la primera posición.En el código siguiente se tiene el mismo
vector con nombres propios y se ejecuta dos veces la
función array_shift() eliminando un elemento en cada
ocasión.Se imprimen los valores que devuelve la
función y los elementos del array resultante de
eliminar la primera casilla.
Ejemplo 1
Resultados
Da como resultado: La función
devuelve: Miguel Pepe Juan Julio Pablo La función
devuelve: Pepe Juan Julio Pablo unset()
Se utiliza para destruir una variable
dada. En el caso de los arreglos, se puede utilizar para
eliminar una casilla de un array asociativo (los que no
tienen índices numéricos sino que su
índice es una cadena de caracteres).Veamos el siguiente código para
conocer cómo definir un array asociativo y eliminar
luego una de sus casillas.
Ejemplo 1
Resultado
La salida será la siguiente:
Barcelona — Nou Camp Real Madrid —
Santiago Bernabeu Valencia — Mestalla Real Sociedad —
Anoeta Barcelona — Nou Camp Valencia — Mestalla Real Sociedad
— Anoeta Aumentar el tamaño de un array
Tenemos también a nuestra
disposición varias funciones que nos pueden ayudar a
aumentar el número de casillas de un
arreglo.
array_push()
Inserta al final del array una serie de
casillas que se le indiquen por parámetro.Por tanto, el número de casillas
del array aumentará en tantos elementos como se hayan
indicado en el parámetro de la función.
Devuelve el número de casillas del array
resultante.Veamos este código donde se crea
un arreglo y se añaden luego tres nuevos
valores.
Ejemplo 1
Resultado
Da como resultado esta salida: Lagartija
Araña Perro Gato Ratón Gorrión Paloma
Oso
array_merge()
Ahora vamos a ver cómo unir dos
arrays utilizando la función array_merge(). A
ésta se le pasan dos o más arrays por
parámetro y devuelve un arreglo con todos los campos
de los vectores pasados.En este código de ejemplo
creamos tres arrays y luego los unimos con la función
array_merge()
Ejemplo 1
Resultado
Da como resultado: Lagartija Araña
Perro Gato Ratón 12 34 45 52 12 Sauce Pino Naranjo Chopo
Perro 34
Una última cosa. También
pueden introducirse nuevas casillas en un arreglo por los
métodos
habituales de asignar las nuevas posiciones en el array a las
casillas que necesitemos.
En arrays normales se haría
así: $tabla = array ("Sauce","Pino","Naranjo");
$tabla[3]="Algarrobo";
En arrays asociativos:
$estadios_futbol = array("Valencia" => "Mestalla","Real
Sociedad" => "Anoeta"); $estadios_futbol["Barcelona"]= "Nou
Camp";
Ejercicios de
arrays
En PHP un array de valores se puede crear
explícitamente definiendo los elementos, o su
creación puede hacerse introduciendo valores en el
array.
Por ejemplo:
$a = ("abc", "def", "ghi");
crea el array definiendo
explícitamente los elementos del array, al contrario de lo
que ocurre en el ejemplo siguiente:
$a[0] = "abc";
$a[1] = "def";
$a[2] = "ghi";
En este caso, el array se crea con tres
elementos. Recordemos que el primer elemento de un array se
identifica con el número "0". Si, por ejemplo, la longitud
de una array es "5", éste incluye seis
elementos.
El elemento que tiene el índice "0"
es el primero del array. Si, en cambio, para
añadir elementos a un array (supongamos que nos referimos
al que hemos creado arriba) se utilizan los corchetes
vacíos y los datos se ajustan
al array.
Por ejemplo:
$a[] = "lmn";
$a[] = "opq";
En este caso caso, el array se alarga 2
elementos y resulta ser:
$a[0] = "abc";
$a[1] = "def";
$a[2] = "ghi";
$a[3] = "lmn";
$a[4] = "opq";
Este ejemplo es mucho más
útil cuando queremos ajustar los elementos al array sin
acudir a funciones específicas y sin tener que leer el
número de los elementos que están en el array. Todo
se ajustará automáticamente y correctamente.Los
array asociativos se basan, en cambio, en parejas "name-value" y
un ejemplo podría ser:
$a = array(
"nombre" => "Mario",
"apellido" => "Rossi",
"email" =>
"mario[arroba]rossi.com",
);
Es interesante la posibilidad que tiene la
función array de introducir las entries, como en el
ejemplo que sigue:
$a = array("primero" =>
array(
"nombre" => "Mario",
"apellido" => "Rossi",
"email" =>
"mario[arroba]rossi.com",
),
"segundo" => array(
"nombre" => "Marco",
"apellido" => "Verdi",
"email" =>
"mario[arroba]verdi.com",
)
);
Ejecutar en este array una
instrucción del tipo:
<? echo $a["segundo"]["email"]; ?>
visualizará
"mario[arroba]verdi.com".
APLICACIÓN DEL
ALUMNO
INDICACIONES
PROBLEMAS PROPUESTOS
GRUPO DE TRABAJO A (15
Minutos)
1. Calcular el promedio de 50
valores almacenados en un ARRAY. Determinar además
cuantos son mayores que el promedio, imprimir el promedio, el
numero de datos mayores que el promedio y una lista de
valores mayores que el promedio.
GRUPO DE TRABAJO B (15
Minutos)
2. Llenar dos ARRAYS A y B de 45
elementos cada uno, sumar el elemento uno del vector A con el
elemento uno del vector B y así sucesivamente hasta
45, almacenar el resultado en un vector C, e imprimir el
ARRAY resultante.
GRUPO DE TRABAJO C (15
Minutos)
3. Llenar un ARRAY de 20
elementos, imprimir la posición y el valor del
elemento mayor almacenado en el vector. Suponga que todos los
elementos del vector son diferentes.
GRUPO DE TRABAJO D (15
Minutos)
4. Almacenar 500 números en
un vector, elevar al cuadrado cada valor almacenado en el
ARRAY, almacenar el resultado en otro vector. Imprimir el
vector original y el vector resultante.
Ing. Pablo Cesar Ttito C.
Página anterior | Volver al principio del trabajo | Página siguiente |