La sesión trata sobre arrays en PHP. Se define un array como un conjunto de variables agrupadas bajo un nombre único, donde cada variable es un elemento. Existen arrays indexados donde el acceso es por posición y arrays asociativos donde el acceso es por clave-valor. Se explican diferentes formas de crear y acceder a arrays, así como funciones como count() y each() para obtener información de un array. Finalmente se proponen ejercicios prácticos relacionados con arrays.
1. SESIÓN X
LIC. ROBERTO ANTONIO GARCIA
roberto.garcia@ugb.edu.sv
Lic. Roberto García - PROGRAMACION IV - UGB
2. “Mi padre QEPD, me menciono un
día, que para tener verdaderos
amigos, debes comenzar por ser
verdaderamente quien eres y mostrar
tus verdaderos sentimientos”
José Mazariegos
Lic. Roberto García - PROGRAMACION IV - UGB
3. 1. Reflexión.
2. Hilo conductor de la sesión anterior.
3. Examen @nline Domingo 01 de Abril 2012.
4. TEMA: ARRAYS EN PHP.
5. Resolviendo Ejercicios Prácticos día Domingo
01 de Abril de 2012.
6. Fin de la sesión.
Lic. Roberto García - PROGRAMACION IV - UGB
4. En la realización de un script en PHP en
múltiples ocasiones existen variables que
tienen información similar y se procesan de
forma semejante. Para ello PHP (y otros
lenguajes) poseen un elemento denominado
ARRAY.
Lic. Roberto García - PROGRAMACION IV - UGB
5. ¿QUE ES UN ARRAY?
Un ARRAY es un conjunto de variables
agrupadas bajo un único nombre. Cada
variable dentro de la matriz se denomina
elemento. Dentro de la misma matriz pueden
existir variables de diferentes tipos y no es
necesario que sean todas del mismo tipo.
Lic. Roberto García - PROGRAMACION IV - UGB
6. Indexada: Aquella cuyo acceso a los elementos se
realiza por la posición que ocupan dentro de la
estructura (se inician siempre desde la posición 0).
Ejemplo: $amigos[0];
Asociativa: Es aquella en la que los elementos
están formados por pares clave-valor y el acceso se
realiza proporcionando una determinada clave.
Ejemplo: $amigos['edad'];
Lic. Roberto García - PROGRAMACION IV - UGB
7. DE FORMA IMPLÍCITA, que consistiría en indicarle
el elemento(ya sea proporcionando su posición o
su clave).
Ejemplo: $nombres[0]='Javier';
En caso de no indicarle una posición el ARRAY
tomara el valor siguiente al ultimo valor
introducido.
Ejemplo: $nombres[]='Lucas' // tomaría como
valor 1 ya que lo ultimo introducido era 0.
Lic. Roberto García - PROGRAMACION IV - UGB
8. MEDIANTE ARRAY(): en el cual le pasamos los
elementos como parámetros. En caso de matriz
indexada toman la posición que ocupan en la
creación de la matriz, mientras que los de la
matriz asociativa se les asigna su valor
mediante "=>".
Ejemplo:
$amigo=array('Nombre'=>'Jose','Direccion'=>'
Neopatria 21');
Lic. Roberto García - PROGRAMACION IV - UGB
9. Disponemos de diversas herramientas para poder
acceder a los elementos de una matriz. En cada
momento se mantiene una referencia del elemento
de la matriz al que se tiene acceso, por tanto, para
recorrer una matriz bastará con modificar dicha
referencia. En caso de una matriz indexada el
recorrido se realizara mediante un bucle y para ello
debemos saber el número de elementos totales que
posee la matriz.
Lic. Roberto García - PROGRAMACION IV - UGB
10. Para ello nos basamos de la función
count(variable) donde variable representa la
variable de la que se quiere obtener el número
de elementos. Si variable es una matriz
devuelve el número de elementos que
tiene, devuelve 1 si solo tiene un elemento
(aunque no sea matriz) y 0 si no tiene ningún
valor.
Lic. Roberto García - PROGRAMACION IV - UGB
11. Otra función que nos permite saber el
número de elementos es sizeof(matriz) .
Para acceder a los elementos de una matriz
asociativa debemos usar la función each()
que recupera el par formado por clave y
valor y además avanza una posición de
puntero.
Lic. Roberto García - PROGRAMACION IV - UGB
12. <?php
for( $i = 0; $i < count($array); $i ++)
{
$array[$i];
...
}
?>
<?php
$array = array("uno", "dos", "tres", "cuatro");//ejemplo de array
$variable="";//creo una variable de texto vacía
for( $i = 1; $i < count($array); $i++) //recorro el array empezando por el segun
do... (recuerda que el valor de un índice de array comienza en el 0).
{
$variable.=$array[$i].' | ';//en el recorrido del bucle cargo cada dato en la var
iable añadiendo la barra recta tras cada uno de ellos
}
$salida = rtrim($variable, ' | ');//quito el último añadido de la barra, puesto que
sobra, y asigno el valor a la variable $salida
echo $salida; //muestro la variable salida.
?>
Lic. Roberto García - PROGRAMACION IV - UGB
13. <?php
$diasemana[] = "lunes";
$diasemana[] = "martes";
$diasemana[] = "miércoles";
$diasemana[] = "jueves";
$diasemana[] = "viérnes";
$diasemana[] = "sábado";
$diasemana[] = "domingo";
foreach ($diasemana as $dia){
echo "dia de la semana $dia<br>";}
?>
Lic. Roberto García - PROGRAMACION IV - UGB
15. 1. Hacer un programa para la empresa MariE, que calcule el salario semanal de un
empleado, tomando en cuenta su pago mensual. (Por ley solo deben trabajar 44
horas semanales.), si exceden las horas que la ley exige en trabajar estas se
pagaran al doble de la hora normal. Además, calcular una serie de Descuentos
como: la renta (10%), ISSS (3%) y AFP (3%). Las retenciones serán elegidas por el
usuario a través de CHECKBOX.
2. Elaborar un programa que muestre el gusto de los usuarios con respecto a las
comidas:
1. Si le gustan las comidas chinas y la CocaCola; que muestre TE GUSTA LA COMIDA
INTERNACIONAL.
2. Si le gustan las pupusas y una Kolashanpan; que le muestre ERES UN NACIDO EN EL SALVADOR.
3. Si le gusta la comida Francesa y la Champaña; que le muestre ERES UN ROMANTICO RICO.
4. Todo realizado a través de RADIOBUTTON.
16. 3. Elaborar un programa que resuelva las operaciones
aritmética con dos dígitos. Utilizar un COMBOBOX para
elegir la operación a realizar.
4. Realizar un programa que resuelva el problema de
conversión de una moneda a otra. Ejemplo convertir
dólares salvadoreños a córdobas nicaragüense. Hacer
conversiones de los 5 países Centroamericanos.
17. FIN DE LA SESIÓN
FELIZ DÍA Y
BENDICIONES
Felices Vacaciones..
Lic. Roberto García - PROGRAMACION IV - UGB