PÁGINAS DINÁMICAS WEB CON PHP Unidad 2 ELEMENTOS DEL LENGUAJE DE PHP
Agenda del curso PHP 2012 ELEMENTOS DEL LENGUAJE PHP Operadores Condicional if sentencia swich ciclo while ciclo for ciclo foreach ACADEMIA SOFTWARE LIBRE 2
ELEMENTOS DEL LENGUAJE PHP Operadores Operadores aritméticos: +, -, *, /, %, ++, -- Operador de asignación: = operadores combinados:.=, +=, etc $a = 3; $a += 5; a vale 8 $b = hola ; $b.= mundo ; b vale hola mundo Equivale a $b = $b. mundo ; Operadores de comparación: ==,!=, <, >, <=, >= y otros Operador de control de error: @. Antepuesto a una expresión, evita cualquier mensaje de error que pueda ser generado por la expresión Operadores lógicos: and (&&), or ( ),!, xor and/&& y or/ tienen diferentes prioridades Operadores de cadena: concatenación:. (punto) asignación con concatenación:.= ACADEMIA SOFTWARE LIBRE 3
Agenda del curso PHP 2012 ELEMENTOS DEL LENGUAJE PHP Operadores Condicional if sentencia swich ciclo while ciclo for ciclo foreach ACADEMIA SOFTWARE LIBRE 4
Estructuras selectivas: if-else switch Estructuras repetitivas: while for foreach ACADEMIA SOFTWARE LIBRE 5
ELEMENTOS DEL LENGUAJE PHP Estructura selectiva if-else if (condición) sentencia if (condición) sentencia 1 else sentencia 2 if (condición1) sentencia 1 else if (condición2) sentencia 2... else if (condición n) sentencia n else sentencia n+1 Mismo comportamiento que en C Las sentencias compuestas se encierran entre llaves elseif puede ir todo junto ACADEMIA SOFTWARE LIBRE 6
Ejemplo de estructura selectiva if-else <?PHP if ($sexo == M ){ $saludo = "Bienvenida, "; else { $saludo = "Bienvenido, "; $saludo = $saludo. $nombre; print ($saludo);?> ACADEMIA SOFTWARE LIBRE 7
Agenda del curso PHP 2012 ELEMENTOS DEL LENGUAJE PHP Operadores Condicional if sentencia swich ciclo while ciclo for ciclo foreach ACADEMIA SOFTWARE LIBRE 8
ELEMENTOS DEL LENGUAJE PHP Estructura selectiva switch switch (expresión) { case valor_1: sentencia 1 break; case valor_2: sentencia 2 break; case valor_n: sentencia n break; default sentencia n+1 Mismo comportamiento que en C, sólo que la expresión del case puede ser integer, float o string ACADEMIA SOFTWARE LIBRE 9
ELEMENTOS DEL LENGUAJE PHP Ejemplo de estructura selectiva switch: switch ($extension) { case ("PDF"): $tipo = "Documento Adobe PDF"; break; case ("TXT"): $tipo = "Documento de texto"; break; case ("HTML"): case ("HTM"): $tipo = "Documento HTML"; break; default: $tipo = "Archivo ". $extension; print ($tipo); ACADEMIA SOFTWARE LIBRE 10
ELEMENTOS DEL LENGUAJE PHP Estructura repetitiva while Estructura repetitiva do while while (condición){ sentencia do{ sentencia del bucle while(condicion) condición sentencia falsa cierta falsa cierta sentencia condición ACADEMIA SOFTWARE LIBRE 11
Ejemplo while Ejemplo do while <?PHP print( "<UL>\n"); $i=1; while($i <= 5) { print("<li>elemento i</li>\n"); $i++; print( "</UL>\n" );?> <?PHP $i = 10; do { print $i; $i--; while($i>0);?> ACADEMIA SOFTWARE LIBRE 12
Estructura repetitiva for ELEMENTOS DEL LENGUAJE PHP for(inicialización;condición; incremento) { sentencias; Inicialización: Se ejecuta al iniciar por una vez. se colocar la variable que contara el numero de veces que se repite el bucle. Condición: Es la condición que se evaluara cada vez que se inicie el bucle. Esta condición es la que determina la duración del bucle. incremento: Indica los cambios que queremos ejecutar en las variables cada vez que se ejecuta el bucle. Ejemplo de for: <?php print ("<UL>\n"); for ($i=1; $i<=5; $i++){ print ("<LI>Elemento $i</li>\n"); print ("</UL>\n");?> inicialización falsa condición cierta sentencia incremento ACADEMIA SOFTWARE LIBRE 13
Ejercicio 2: Programa que calcula una tabla de multiplicar Ilustra cómo manejar variables y cómo usar bucles ACADEMIA SOFTWARE LIBRE 14
Estructura selectiva foreach foreach( expresión_arreglo as $valor) { sentencias; Toma cada uno de los elementos del arreglo y en cada iteración se almacena en la variable $valor. foreach( expresión_arreglo as $clave => $valor) { sentencias; toma tanto el elemento como la clave (o indica) y en cada iteración se almacenan en las variables $valor y $clave respectivamente ACADEMIA SOFTWARE LIBRE 15
Estructuras foreach <html><head> <title>ciclo foreach - Ejemplo </title></head> <body> <h1>algunas monedas del mundo...</h1> <hr><hr> <?php // se crea un arreglo asociativo que contiene las monedas $monedas = array( "Europa"=>"Euro", "USA"=>"Dolar", "Jopon"=>"Yen", "Venezuela"=>"Bolívar"); //Se crea la tabla donde se muestra la información echo "<table bordercolor=blue border=1 align=center>\n", "<tr>\n","<th>pais</th><th>monedas</th>\n","</tr>\n"; foreach $monedas as $pais=>$moneda) { //se agrega una nueva fila por cada moneda en el arreglo echo "<tr>\n","<td>$pais</td><td>$moneda</td>\n","</tr>\n"; echo "</table>";?> </body></html> ACADEMIA SOFTWARE LIBRE 16
<html><head><title>ciclos While, do..while y for Ejemplo</title></head> <body><h1>selección del día del mes y año</h1> <hr> <form name = "f1"> <?php $dia = date( "d" ); // Retorna un dia actual print( "<h2>seleccione un día del mes</h2>\n" ); // * Se crea el menú desplegable de los días del mes echo("<select name=\"dia\">\n\t<option>elija uno...</option>\n"); while( $dia<= 31 ) //se usa un ciclo while { print( "\t<option value=\"$dia\">$dia</option>\n" ); $dia++; echo ( "</select>\n" ); $mes = date( "m" ); // Retorna el mes actual, en numero. print( "<h2>seleccione un mes del año:</h2>\n" ); ACADEMIA SOFTWARE LIBRE 17
//Se crea el menu desplegable de los meses del año echo( "<select name=\"mes\">\n\t<option>elija uno...</option>\n" ); do //Se usa un ciclo do..while { print( "\t<option value=\"$mes\">$mes</option>\n" ); $mes++; while( $mes <= 12 ); echo( "</select>\n" ); $anio = date( "Y" ); //Retorna el año actual print( "<h2>selecciona un año:</h2>\n" ); //Se crea el menu desplegable de los años echo( "<select name=\"anio\">\n\t<option>elija uno...</option>\n" ); $finanio=$anio + 30; for( $anio; $anio<= $finanio; $anio++ ) //se usa el ciclo for { print( " \t<option value=\"$anio\">$anio</option>\n"); echo( "</select>\n" );?> </form></body></html> ACADEMIA SOFTWARE LIBRE 18
ACADEMIA SOFTWARE LIBRE 19
Ejemplo <?php echo <table >; for ($i=0;$i<$maxusuarios;$i++){ echo <tr> ; echo <td>{$usuario[$i]['nombre']</td> ; echo <td>{$usuario[$i]['apellido']</td> ; echo <td>{$usuario[$i]['ci']</td> ; echo </tr> ; echo </table> ;?> ACADEMIA SOFTWARE LIBRE 20
Ejemplo <?php echo <table >; for ($i=0;$i<$maxusuarios;$i++){ echo <tr> ; echo <td>{$usuario[$i]['nombre']</td> ; echo <td>{$usuario[$i]['apellido']</td> ; echo <td>{$usuario[$i]['ci']</td> ; echo </tr> ; echo </table> ;?> ACADEMIA SOFTWARE LIBRE 21
Mostrar en pantalla una tabla de 10 por 10 con los números del 1 al 100, colorear las filas alternando gris y blanco. <html> <head><title>tabla 10x10</title></head> <body> <?php $TAM = 10; echo "<table border=1>"; $n=1; for ($n1=1; $n1<=$tam; $n1++) { if ($n1 % 2 == 0) echo "<tr bgcolor=#bdc3d6>"; else echo "<tr>"; for ($n2=1; $n2<=$tam; $n2++) { echo "<td>", $n, "</td>"; $n=$n+1; echo "</tr>"; echo "</table>";?> </body> </html> ACADEMIA SOFTWARE LIBRE 22