2 PHP
PHP. Guía 3 3 Facultad: Ingeniería Escuela: Computación Tema: Introducción a PHP y Estructuras de Control Contenidos Esta práctica se fundamente en la necesidad que el estudiante obtenga los conocimientos básicos para la inicialización en el desarrollo de código en el Lenguaje de Programación PHP. Se desarrollaran diferentes programas que cubran los siguientes temas: declaración de variables, impresión de variables declaradas, sintaxis de creación de comentarios, sintaxis de estructuras de control, definición de funciones e importar código con la utilización de require e include.
4 PHP, Guía 3 Objetivo Específico Conocer las sintaxis de las diferentes funcionalidades básicas para el buen desarrollo de código sobre PHP. Materiales y Equipo Editor de Texto Navegador Web Firefox o Google Chrome WampServer Introducción Teórica Definición de PHP PHP (acrónimo de PHP: Hypertext Pre-Processor) es un lenguaje de programación, relativamente nuevo (su antecesor, PHP/FI, data de finales de 1994), concebido principalmente como herramienta para el desarrollo de aplicaciones Web. PHP nos permite diseñar paginas dinámicas de servidor, es decir, generar paginas bajo petición capaces de responder de manera inteligente a las demandas del cliente y que nos permitan la automatización de gran cantidad de tareas. Si tuviéramos que definir PHP en una sola línea, podríamos decir que es un lenguaje interpretado de alto nivel embebido en paginas HTML y ejecutado en el servidor. Aun que existe una multitud de lenguajes y entornos de desarrollo concebidos para Internet, PHP se ha convertido en uno de los lenguajes, del lado del servidor, más ampliamente utilizados para el desarrollo de páginas dinámicas junto con ASP, JSP, ColdFusion, Perl y Python. El modo de funcionamiento de una página PHP, es el siguiente:
PHP. Guía 3 5 Ejecución de un archivo PHP El lenguaje de programación PHP permite ejecutar sus archivos con extensión ".php" en dos vías: Ejecución vía web: es la forma común que se conoce por los desarrolladores, a través de una navegador web se accede a las paginas y es apache que convierte el código php en html. Ejemplo: //Primer Programa escrito en PHP echo "<b>bienvenidos</b><br /><b>hola Estudiantes UDB</b>"; Tabla 1 Figura 1
6 PHP, Guía 3 Ejecución en modo consola: para poder ejecutar un archivo php en modo consola se debe auxiliar de la librería php-cli para ejecutar código PHP en modo consola. A continuación veremos un ejemplo de cómo definir y ejecutar un archivo PHP en el sistema operativo Linux. Ejemplo #!/usr/bin/php //Primer Programa escrito en PHP-cli echo "Bienvenidos\n Hola Estudiantes UDB \n"; Tabla 2 Figura 2
PHP. Guía 3 7 Procedimiento Utilizando su editor de texto favorito, digitar el código de cada uno de los ejemplos indicados en las tablas siguientes, posteriormente abrir un navegador web y ejecutar de manera individual cada uno de los ejemplos proporcionados. 1. Fundamentos de PHP PHP permite la creación de comentarios dentro de su código, el cual permite definirlos de tres formas diferentes, en el siguiente código se desarrolla cada uno de ellos y la impresión de un mensaje de bienvenida. //Primer forma de definición de comentarios, en una sola línea /* Segunda forma de definición de comentarios, con líneas múltiples */ #Tercer forma de definición de comentarios echo 'Mi primer código en PHP'; echo "Mi segundo código en PHP"; Tabla 3 2. Declaración de variables Las variables en PHP son representadas con un signo de dólar ($) seguido por el nombre de la variable. El nombre de la variable es sensible a minúsculas y mayúsculas. Es decir, las siguientes declaraciones de variables son distintas entre ellas: $variable, $Variable, $variable, $VariAble. Para declarar un nombre de variable válido, éste tiene que empezar con una letra (o si no empieza con una letra, tendrá que hacerlo con un carácter de subrayado), seguido de cualquier número de letras, números y caracteres de subrayado. Veamos algunos ejemplos:
8 PHP, Guía 3 Posible nombre de variables Validez $4variable Nombre de variable invalido. $_4variable Nombre de variable valido. $variable4 Nombre de variable valido. $otra Nombre de variable valido. $1_otra Nombre de variable invalido. $variable_de_nombre_muy_largo Nombre de variable valido. $ABC Nombre de variable valido. $A B C Nombre de variable invalido. $A_y_B_x_C Nombre de variable valido. Variables enteras $primer_entero = (integer) 18; $segundo_entero = (integer) -18; $tercer_entero = (integer) 0x12; $sumatoria_entera = $primer_entero + $tercer_entero; echo '<br>la sumatorio entre las dos variables enteras es de: '.$primer_sumatoria; $resta_entera = $segundo_entero - $tercer_entero; echo "<br>la diferencia entre las dos variables enteras es de: <b>$primer_resta</b>"; Tabla 4
PHP. Guía 3 9 Variables en float o double $primer_flotante = (float) 18.69; $segundo_flotante = (float) 0.199e20; $sumatoria_flotante = $primer_flotante + $segundo_flotante; echo '<br>la sumatorio entre las dos variables flotantes es de: '.$sumatoria_flotante; Tabla 5 Variables string $primer_string = (string)'roberto'; $segundo_string = (string) ' MARTINEZ'; $primer_entero = (integer) 27; echo 'Resultado de concatenar dos variables string: '.$primer_string.$segundo_string.'<br>'; echo 'Resultado de concatenar una variable string e integer: '.$segundo_string.$primer_entero.'<br>'; Variables boolean Tabla 5 $primer_boolean = (boolean) true; $segundo_boolean = (boolean) FALSE; echo 'Valor verdadero:'.$primer_boolean.'<br>'; echo 'Valor falso:'.$segundo_boolean.'<br>'; Tabla 6
10 PHP, Guía 3 Operadores aritméticos básicos $a = (integer) 2; $b = (integer) 3; $c = (float) 3.14; echo 'La suma de $a + $b es: <b>'.($a + $b).'</b><br>'; echo 'La resta de $a - $b es: <b>'.($a - $c).'</b><br>'; echo 'La multiplicación de $a * $b es: <b>'.($a / $c).'</b><br>'; echo 'La división de $a / $b es: <b>'.($a / $b).'</b><br>'; echo 'La modulo de $a % $b es: <b>'.($a % $b).'</b><br>'; Tabla 7 Operadores unarios $a = (integer) 10; echo 'El valor de a inicial es: '.$a.'<br>'; echo 'El valor de a modificado con el operador pre incremento es: '.(++$a).'<br>'; echo 'El valor de a modificado con el operador post incremento es: '.($a++).'<br>'; echo 'El valor de a modificado con el operador pre decremento es: '.(--$a).'<br>'; echo 'El valor de a modificado con el operador post decremento es: '.($a--).'<br>'; Tabla 8
PHP. Guía 3 11 Arreglos Un array en PHP es realmente un mapa ordenado. Un mapa es un tipo de datos que asocia valores con claves. Este tipo es optimizado para varios usos diferentes; 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. Ya que los valores de un array pueden ser otros arrays, árboles y también son posibles arrays multidimensionales. $primer_arreglo = []; $primer_arreglo[0] = 'Hola'; $primer_arreglo[1] = 'Mundo'; echo 'Mensaje de bienvenida: <b>'.$primer_arreglo[0].' '.$primer_arreglo[1].'</b><br>'; Tabla 9 3. Estructuras de control. Estructura if else En muchas ocasiones, los programas presentan tomas de decisiones para tomar un camino (si la condición es verdadera o la condición es falsa). PHP, al igual que otros lenguajes de programación, presenta la opción de las estructuras condicionales para realizar dicha operación.
12 PHP, Guía 3 $primer = (integer) 20; $segundo = (integer) 5; $tercer = (integer) 25; $mayor = (integer) 0; echo '<center>estructura IF - ELSE</center><br>'; echo 'LOS NUMEROS A COMPARAR: <b>'.$primer.','.$segundo.' y '.$tercer.'</b><br>'; if($primer > $segundo): $mayor = $primer; else: $mayor = $segundo; endif; if($mayor < $tercer): $mayor = $tercer; endif; echo 'EL NUMERO MAYOR ES: <b>'.$mayor.'</b><br>' Tabla 10
PHP. Guía 3 13 Estructura if - elseif - else $dia_actual $nombre_dia = (string) date("d"); = (string) ''; if($dia_actual == 'Mon'): $nombre_dia = 'Lunes'; elseif($dia_actual == 'Tue'): $nombre_dia = 'Martes'; elseif($dia_actual == 'Wed'): $nombre_dia = 'Miércoles'; elseif($dia_actual == 'Thu'): $nombre_dia = 'Jueves'; elseif($dia_actual == 'Fri'): $nombre_dia = 'Viernes'; elseif($dia_actual == 'Sat'): $nombre_dia = 'Sabado'; else: $nombre_dia = 'Domingo'; endif; echo 'Hoy es: <b>'.$nombre_dia.'</b><br>'; Tabla 11
14 PHP, Guía 3 Estructura switch $dia_actual = (string) date("d"); $nombre_dia = (string) ''; switch ($dia_actual): case 'Mon': $nombre_dia = 'Lunes'; break; case 'Tue': $nombre_dia = 'Martes'; break; case 'Wed': $nombre_dia = 'Miércoles'; break; case 'Thu': $nombre_dia = 'Jueves'; break; case 'Fri': $nombre_dia = 'Viernes'; break; case 'Sat': $nombre_dia = 'Sabado'; break; default: $nombre_dia = 'Domingo'; break; endswitch; echo 'Hoy es: <b>'.$nombre_dia.'</b><br>'; Tabla 12
PHP. Guía 3 15 Estructura for $cantidad = (integer) 100; $i = (integer) 0; echo 'Números impares del 1 al 100<br>'; for($i = 1; $i<=$cantidad ; $i++): if($i % 2): echo 'Número impar: '.$i.'<br>'; endif; endfor; Tabla 13 Estructura while $cantidad = (integer) 0; echo 'Números pares del 1 al 100<br>'; while($cantidad<=100): if(!($cantidad % 2)): echo 'Número impar: '.$cantidad.'<br>'; endif; $cantidad++; endwhile; Tabla 14
16 PHP, Guía 3 Estructura for each La estructura for each sirve para moverse por los elementos de una estructura de datos como podría ser un vector y así poder realizar alguna acción para cada uno de los elementos que conforman dicha estructura. $informacion = []; $informacion = array( 'Carlos', 'Zulma', 'Mario' ); foreach($informacion as $valor): print 'El nombre es: '.$valor.'<br>'; endforeach; Tabla 15 4. Definición de Funciones de PHP. Pseudo código para demostrar el uso de funciones: function foo($arg_1,$arg_2,/*...,*/$arg_n) { echo 'Función de ejemplo.\n'; return $valor_devuelto; } Tabla 16
PHP. Guía 3 17 Funciones recursivas function recursividad($a) { if ($a < 20) { echo "$a <br>"; recursividad($a + 1); } } recursividad(1); Tabla 17 5. Importar código en PHP (require e include) Es muy común separar el código de un programa PHP en diferentes archivos y luego ir llamando a unos u otros según sea necesario para una determinada solicitud. Para ello se pueden utilizar las siguientes funciones: require( ruta/archivo.php ) include( ruta/archivo.php ) require_once( ruta/archivo.php ) include_once( ruta/archivo.php ) Diferencias entre require e include Ambas funciones importan o insertan el código contenido en el archivo.php dentro de otro. La diferencia puede deducirse de su nombre: require() establece que el código del archivo invocado es requerido, es decir, obligatorio para el funcionamiento del programa. Por ello, si el
18 PHP, Guía 3 archivo especificado en la función require() no se encuentra saltará un error PHP Fatal error y el programa PHP se detendrá. include(), por el contrario, si no se encuentra dicho código, saltará un error tipo Warning y el programa seguirá ejecutándose (aunque como consecuencia de no incluirse el código puede que no funcione correctamente, o sí, depende de la situación). Ejemplo: Archivo: funciones_uno.php function suma($a,$b) { return $a+$b; } Archivo: funciones_dos.php function resta($a,$b) { return $a-$b; } Archivo: ejecucion.php require 'funciones_uno.php'; include 'funciones_dos.php'; $numero_uno = (integer) 15; $numero_dos = (integer) 25; $numero_tres = (integer) 10; echo 'La suma de dos números es: <b>'.suma($numero_uno,$numero_dos)."</b><br>"; echo 'La resta de dos números es: <b>'.resta($numero_tres,$numero_dos)."</b><br>";
PHP. Guía 3 19 Investigación Complementaria Investigar que son variables de variables en PHP, mostrar un ejemplo práctico de su aplicabilidad. Investigar cuales son las variables predefinidas en PHP. Investigar las siguientes funciones string, colocar en qué consiste, su sintaxis y un ejemplo práctico: addslashes, explode, fprintf, htmlspecialchars, md5, money_format, number_format, str_replace, strcmp, strlen, strncmp, strpos, strtoupper, strtolower, substr-replace, trim, ucwords, wordwrap. Bibliografía www.php.net PHP a través de ejemplo. Abraham Gutiérrez Ginés Bravo. ISBN: 970-15- 1083-6.