Introducción Nivelación PHP

2,422 views

Published on

Nivelación en PHP. Reforzamiento de conceptos y algunas lineamientos.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,422
On SlideShare
0
From Embeds
0
Number of Embeds
980
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Introducción Nivelación PHP

  1. 1. <ul><li>Informático. </li></ul><ul><li>Desarrollador de Aplicaciones, administración de Servicios y Seguridad Informática. </li></ul><ul><li>Desarrollador cursos e-learning. </li></ul><ul><li>Consultor entidades de gobierno y Empresas Privadas. </li></ul><ul><li>Socio cofundador Poodu S.A. </li></ul><ul><li>Buena Persona. </li></ul>Rodrigo Miranda Quién Soy Blog: www.rodrigomiranda.cl [email_address] [email_address] [email_address]
  2. 2. PHP5 Nivelación Rodrigo Miranda [email_address]
  3. 3. Rodrigo Miranda Blog: www.rodrigomiranda.cl Módulo: Lenguaje PHP INTRODUCCIÓN Y FUNDAMIENTOS BÁSICOS
  4. 4. <ul><li>PHP es un eficaz lenguaje de sencuencias de comandos. </li></ul>Rodrigo Miranda Lenguaje PHP Blog: www.rodrigomiranda.cl
  5. 5. <ul><li>PHP (Personal Home Page Tools) (1993 – 1994) , desarrollado por Rasmus Lerdorf </li></ul><ul><li>para una solución personal (Contador de visitas). </li></ul><ul><li>CGI escrito en C. </li></ul><ul><li>PHP/FI – PHP/FI 2.0, se agregó un interprete de formulario que en conjunto formaron la primera versión compacta. </li></ul><ul><li>PHP 3, fue desarrollado en 1997 luego de reescribir completamente el código de PHP/FI 2.0 </li></ul>Rodrigo Miranda Historia PHP Blog: www.rodrigomiranda.cl
  6. 6. <ul><li>PHP 3.0 lanzada oficialmente en junio 1998. </li></ul><ul><li>PHP 4, lanzada oficialmente en mayo 2000, con nuevo núcleo llamado Motor Zend, en referencia a sus desarrolladores (Zeev Zuraski, Andi Gurmans). </li></ul><ul><li>Se incorporó soporte para la mayoría de los servidores Web, funcionales para el manejo de sesiones HTTP y la inclusión de gran cantidad de funciones. </li></ul>Rodrigo Miranda Historia PHP Blog: www.rodrigomiranda.cl
  7. 7. <ul><li>PHP 5, se lanzó 2003, pero su primera versión estable se liberó en julio 2004. </li></ul><ul><li>- Mejora motor Zend Engine 2. </li></ul><ul><li>- Real metodología e implementación referente a la POO, transformándola en una real alternativa para proyectos de envergadura. </li></ul><ul><li>- Nuevas librerías y mejoras para soporte XML. </li></ul><ul><li>- Manejo de Excepciones. </li></ul><ul><li>- Mejoramiento de la interfaz para distintas base de datos. </li></ul><ul><li>- Seguridad en las conexiones. </li></ul>Rodrigo Miranda Historia PHP Blog: www.rodrigomiranda.cl
  8. 8. <ul><li>PHP 5, e incluso las anteriores, proveen de extensiones para ejecutarse en una gran variedad de servidores: </li></ul><ul><li>Apache Sambar </li></ul><ul><li>IIS Xitami </li></ul><ul><li>PWS Caudium </li></ul><ul><li>AOL Server Netscape Ent. Server </li></ul><ul><li>Roxen THTTPD </li></ul><ul><li>OmniHTTPd Abiss Web Server </li></ul><ul><li>Oreilly Website Pro </li></ul>Rodrigo Miranda Soporte Web Blog: www.rodrigomiranda.cl
  9. 9. <ul><li>PHP 5, e incluso las anteriores, proveen de extensiones para soportar, entre otras, las siguientes base de datos. </li></ul><ul><li>DBase msql </li></ul><ul><li>Informix Oracle </li></ul><ul><li>Interbase PostgreSQL </li></ul><ul><li>Firebird Sybase </li></ul><ul><li>MS SQL Server SQLite </li></ul><ul><li>MySQL </li></ul>Rodrigo Miranda Soporte BD Blog: www.rodrigomiranda.cl
  10. 10. Rodrigo Miranda Blog: www.rodrigomiranda.cl Flujo petición Web <ul><li>Petición simple, cliente a servidor para servir sólo una página HTML. </li></ul><ul><li>Petición compleja: </li></ul><ul><li>Cliente - Servidor, Servidor – Compilador, Compilador- Servidor, Servidor – Cliente. </li></ul>
  11. 11. Rodrigo Miranda Blog: www.rodrigomiranda.cl Sintaxis Básica y Tipos Datos
  12. 12. Rodrigo Miranda Blog: www.rodrigomiranda.cl Sintaxis Básica <ul><li>Todas las secuencias de comandos se escriben en los llamados bloques de código . Todo lo que queda fuera de esos identificadores será ignorado por el compilador PHP y se devolverá directamente al servidor Web para que lo muestre en la pantalla el cliente. </li></ul>
  13. 13. Rodrigo Miranda Blog: www.rodrigomiranda.cl Sintaxis Básica <ul><li>Un ejemplo es: </li></ul><ul><li><html> </li></ul><ul><li><head><title> Mi primer Script </title></head> </li></ul><ul><li><body> </li></ul><ul><li><?php </li></ul><ul><li>echo “Mi primer Script” ; </li></ul><ul><li>?> </li></ul><ul><li></body> </li></ul><ul><li></html> </li></ul>
  14. 14. Rodrigo Miranda Blog: www.rodrigomiranda.cl Sintaxis Básica <ul><li>Otros delimitadores de códigos: </li></ul><ul><li><? … ?> Versión abreviada de <?php .. ?> </li></ul><ul><li><% … %> Estilo ASP </li></ul><ul><li><SCRIPT LANGUAGE=“PHP”> </li></ul><ul><li>… . </li></ul><ul><li></SCRIPT> Sintaxis compatible con editor HTML. </li></ul>
  15. 15. Rodrigo Miranda Blog: www.rodrigomiranda.cl Sintaxis Básica <ul><li>Variables empiezan siempre con $: </li></ul><ul><li><?php </li></ul><ul><li>$variable1 = “hola” ; //válido </li></ul><ul><li>variable1 = “hola” ; // no válido falta $ </li></ul><ul><li>$variable(h)1 = “hola” ; //no válido, no se utiliza ( ) </li></ul><ul><li>$5variable1 = “hola” ; //no válido empieza con número. </li></ul><ul><li>?> </li></ul>
  16. 16. Rodrigo Miranda Blog: www.rodrigomiranda.cl Sintaxis Básica <ul><li>Eliminación de variables: </li></ul><ul><li><?php </li></ul><ul><li>$variable1 = “NO ME DESTRUYAS” ; //válido </li></ul><ul><li>unset( $variable1 ); </li></ul><ul><li>?> </li></ul><ul><li>PHP es un lenguaje permisivo en lo que respecta a la declaración de variables. </li></ul>
  17. 17. Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos básicos de Datos <ul><li>En PHP hay 3 tipos básicos de variables: entero, cadena y coma flotante. </li></ul><ul><li>Y en PHP hay 2 tipos complejos (objetos y matrices). </li></ul>
  18. 18. Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos básicos de Datos <ul><li>Entero: </li></ul><ul><li>Tipo de Datos numérico fundamental, PHP acepta valores de números enteros que utilicen 3 bases matemáticas: decimal (base 10), octal (base 8) y hexadecimal (base 16) </li></ul>
  19. 19. Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos básicos de Datos <ul><li>En PHP hay 3 tipos básicos de variables: entero, cadena y coma flotante. </li></ul><ul><li><?php </li></ul><ul><li>$enteroTipo1 = 50 ; //Notación decimal estándar </li></ul><ul><li>$enteroTipo2 = O62 ; //Mismo número notación octal </li></ul><ul><li>$enteroTipo3 = 0x32 ; //Notación hexadecimal </li></ul><ul><li>?> </li></ul>
  20. 20. Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos básicos de Datos <ul><li>Coma flotante: </li></ul><ul><li>Números que contienen una fracción decimal y que pueden ser expresado en notación científica y decimal </li></ul>
  21. 21. Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos básicos de Datos <ul><li>Almacenar números de coma flotante </li></ul><ul><li><?php </li></ul><ul><li>$floatTipo1 = 5.1 ; //Notación estándar de coma flotante </li></ul><ul><li>$floatTipo2 = .051e2 ; //Notación científica de coma flotante </li></ul><ul><li>?> </li></ul>
  22. 22. Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos básicos de Datos <ul><li>Cadenas: </li></ul><ul><li>Asignación texto o string a variables. Existe 2 tipos de cadenas las analizadas y las sin analizar. </li></ul>
  23. 23. Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos básicos de Datos <ul><li>Cadena Analizada </li></ul><ul><li><?php </li></ul><ul><li>$valor1 = 77 ; </li></ul><ul><li>$cadena1 = “Es capaz de reemplazar $valor1” ; </li></ul><ul><li>echo $cadena1; </li></ul><ul><li>?> </li></ul><ul><li>Resultado: </li></ul><ul><li>Es capaz de reemplazar 77 </li></ul>
  24. 24. Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos básicos de Datos <ul><li>Cadena NO analizada </li></ul><ul><li><?php </li></ul><ul><li>$valor1 = 77 ; </li></ul><ul><li>$cadena1 = ‘Es capaz de reemplazar $valor1’ ; </li></ul><ul><li>echo $cadena1; </li></ul><ul><li>?> </li></ul><ul><li>Resultado: </li></ul><ul><li>Es capaz de reemplazar $valor1 </li></ul>
  25. 25. Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos básicos de Datos <ul><li>Concatenación </li></ul><ul><li><?php </li></ul><ul><li>$cadena1 = ‘Estoy’ ; </li></ul><ul><li>$cadena2 = ‘ buscando pareja’ ; </li></ul><ul><li>echo $cadena1 . $cadena2 ; </li></ul><ul><li>?> </li></ul><ul><li>Resultado: </li></ul><ul><li>Estoy buscando pareja </li></ul>
  26. 26. Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos básicos de Datos <ul><li>Cadena de escape: </li></ul><ul><li> Carácter de alimentación de línea. </li></ul><ul><li> Retorno de Carro. </li></ul><ul><li> Tabulación horizontal. </li></ul><ul><li> Barra Invertida. </li></ul><ul><li>$ Símbolo de dólar. </li></ul>
  27. 27. Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos básicos de Datos <ul><li>Cadena de escape: </li></ul><ul><li>’ Carácter apóstrofe. </li></ul><ul><li>” Comillar Rectas. </li></ul><ul><li>### Carácter ASCII (octal). </li></ul><ul><li>x## Carácter ASCII (hexadecimal) . </li></ul>
  28. 28. Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos básicos de Datos // Cadena NO válida <?php $cadenaMala = “No supe como “escapar” este ejemplo?” ; // Cadena Válida $cadenaBuena = “Si supe como ” escapar” este ejemplo” ; ?>
  29. 29. Rodrigo Miranda Blog: www.rodrigomiranda.cl Manipulación de Variables
  30. 30. Rodrigo Miranda Blog: www.rodrigomiranda.cl Manipulación de Variables <ul><li>Algunas ecuaciones: </li></ul><ul><li><?php </li></ul><ul><li>$variable = 5 + 7 ; // = 12 </li></ul><ul><li>$variable = $variable - 6 ; // = 6 </li></ul><ul><li>$variable = $variable / 2 ; // = 3 </li></ul><ul><li>$variable = $variable * (2 + 5) ; // = 21 </li></ul><ul><li>echo $variable ; </li></ul><ul><li>?> </li></ul><ul><li>Resultado: </li></ul><ul><li>= 21 </li></ul>
  31. 31. Rodrigo Miranda Blog: www.rodrigomiranda.cl Manipulación de Variables <ul><li>Más ecuaciones abreviadas: </li></ul><ul><li><?php </li></ul><ul><li>$variable = 1 ; </li></ul><ul><li>$variable ++; // = $variable + 1 </li></ul><ul><li>$variable --; // = $variable - 1 </li></ul><ul><li>++ $variable ; // = Incrementa antes de su ejecución </li></ul><ul><li>echo $variable ; </li></ul><ul><li>?> </li></ul><ul><li>Resultado: </li></ul><ul><li>= 2 </li></ul>
  32. 32. Rodrigo Miranda Blog: www.rodrigomiranda.cl Estructuras de Control <ul><li>Sentencia if: Sin duda la estructura de control más importante en varios lenguajes de programación. Nos permitirá ejecutar un bloque de código determinado si se cumple una condición. </li></ul><ul><li><?php </li></ul><ul><li>$variable = 1; </li></ul><ul><li>if ( $variable == 1 ) { </li></ul><ul><li>echo “Realizo algo” ; </li></ul><ul><li>} </li></ul><ul><li>ERROR </li></ul><ul><li>if ( $variable = 1 ) { </li></ul><ul><li>echo “Realizo algo” ; </li></ul><ul><li>} </li></ul><ul><li>?> </li></ul>
  33. 33. Rodrigo Miranda Blog: www.rodrigomiranda.cl Estructura de Control <ul><li>1parte de Operadores: </li></ul><ul><li>$var1 == $var2 Si $var1 es igual a $var2. </li></ul><ul><li>$var1 === $var2 Si $var1 es equivalente a $var2 </li></ul><ul><li>$var1 != $var2 Si $var1 es distinto a $var2 </li></ul><ul><li>$var1 !== $var2 Si $var1 no es equivalente a $var2 </li></ul><ul><li>$var1 < $var 2 Si $var1 es menor a $var2 </li></ul>
  34. 34. Rodrigo Miranda Blog: www.rodrigomiranda.cl Estructura de Control <ul><li>2parte de Operadores: </li></ul><ul><li>$var1 > $var2 Si $var1 es mayor a $var2. </li></ul><ul><li>$var1 <= $var2 Si $var1 es menor o igual a $var2. </li></ul><ul><li>$var1 >= $var2 Si $var1 es mayor o igual a $var2. </li></ul>
  35. 35. Rodrigo Miranda Blog: www.rodrigomiranda.cl Estructura de Control <ul><li>Estructuras de control Anidadas </li></ul><ul><li><?php </li></ul><ul><li>$variable = 5 + 7 ; // = 12 </li></ul><ul><li>if ( $variable < 20 ) { </li></ul><ul><li>if (( $variable % 2 ) == 0) { </li></ul><ul><li>$variable = $variable / 2 ; </li></ul><ul><li>} else { </li></ul><ul><li>$variable = $variable – 5; </li></ul><ul><li>} </li></ul><ul><li>} else { </li></ul><ul><li>$variable = “El valor era mayor o igual a 20” ; </li></ul><ul><li>} </li></ul><ul><li>echo $variable ; </li></ul><ul><li>?> </li></ul><ul><li>Resultado: </li></ul><ul><li>= 6 </li></ul>
  36. 36. Rodrigo Miranda Blog: www.rodrigomiranda.cl Estructura de Control <ul><li>Operadores Lógicos: </li></ul><ul><li>$var1 and $var2 true, Si $var1 y $var2 son verdaderos. </li></ul><ul><li>$var1 or $var2 true, Si $var1 o $var2 son verdaderos. </li></ul><ul><li>$var1 xor $var2 true, Si $var1 o $var2 es verdadero. </li></ul><ul><li>! $var1 true, Si $var1 no es verdadero. </li></ul><ul><li>$var1 && $var2 true, Si $var1 y $var2 son verdaderos. </li></ul><ul><li>$var1 || $var2 true, Si $var1 o $var2 son verdaderos . </li></ul>
  37. 37. Rodrigo Miranda Blog: www.rodrigomiranda.cl Estructura de Control <ul><li>Estructuras condicional utilizando if , else y elseif: </li></ul><ul><li><?php </li></ul><ul><li>$variable = 27 ; </li></ul><ul><li>if ( $variable < 20 ) { </li></ul><ul><li>if (( $variable % 2 ) == 0) { </li></ul><ul><li>$variable = $variable / 2 ; </li></ul><ul><li>} else { </li></ul><ul><li>$variable = $variable – 5; </li></ul><ul><li>} </li></ul><ul><li>} elseif( $variable < 25 ) { </li></ul><ul><li>$variable = “El valor de la variable esta entre 20 y 24 considerándolos a ellos” ; </li></ul><ul><li>} elseif( $variable < 30 ){ </li></ul><ul><li>$variable = “El valor de la variable esta entre 25 y 29 considerándolos a ellos” ; </li></ul><ul><li>} </li></ul><ul><li>echo $variable ; </li></ul><ul><li>?> </li></ul><ul><li>Resultado: </li></ul><ul><li>= El valor de la variable esta entre 25 y 29 considerándolos a ellos. </li></ul>
  38. 38. Rodrigo Miranda Blog: www.rodrigomiranda.cl Estructuras de Control <ul><li>Sentencia Switch: Es una sentencia simple que puede realizar tareas parecidas a la sentencia if. </li></ul><ul><li><?php </li></ul><ul><li>$variable = 1; </li></ul><ul><li>switch ($variable) { </li></ul><ul><li>case 1: </li></ul><ul><li>echo ‘Realiza caso 1<br>’ ; </li></ul><ul><li>case 2: </li></ul><ul><li>echo ‘Realiza caso 2<br>’ ; </li></ul><ul><li>break ; </li></ul><ul><li>case 3: </li></ul><ul><li>echo ‘Realiza caso 3<br>’ ; </li></ul><ul><li>default : </li></ul><ul><li>echo “Caso por defecto” ; </li></ul><ul><li>} </li></ul><ul><li>?> </li></ul><ul><li>Resultado: </li></ul><ul><li>= Realiza caso 1 </li></ul><ul><li>Realiza caso 2. </li></ul>
  39. 39. Rodrigo Miranda Blog: www.rodrigomiranda.cl Estructuras de Control de Repetición <ul><li>Sentencia while: C uando buscamos una iteración, o repeticion la sentencia o bucle while nos ayuda. </li></ul><ul><li><?php </li></ul><ul><li>$variable = 1; </li></ul><ul><li>while ($variable <= 300) { </li></ul><ul><li>if (($variable % 3 ) == 0){ </li></ul><ul><li>echo “ $variable es divisible por 3<br>” ; </li></ul><ul><li>} </li></ul><ul><li>$variable++: </li></ul><ul><li>} </li></ul><ul><li>?> </li></ul>
  40. 40. Rodrigo Miranda Blog: www.rodrigomiranda.cl Estructuras de Control de Repetición <ul><li>Sentencia do while: Muy parecida a la sentencia while con la salvedad de que en ella por lo menos se ejecuta una vez el código que contiene . </li></ul><ul><li><?php </li></ul><ul><li>$variable = 1; </li></ul><ul><li>do{ </li></ul><ul><li>if (($variable % 3 ) == 0){ </li></ul><ul><li>echo “$variable es divisible por 3<br>” ; </li></ul><ul><li>} </li></ul><ul><li>$variable ++ ; </li></ul><ul><li>} while ( $variable <= 300 ) ; </li></ul><ul><li>?> </li></ul>
  41. 41. Rodrigo Miranda Blog: www.rodrigomiranda.cl Estructuras de Control de Repetición <ul><li>Sentencia for: Muy parecida a la sentencia while, de hecho resuelven los mismos problemas. En ella podemos contraer un poco más el código de programación. </li></ul><ul><li><?php </li></ul><ul><li>for ($variable = 1 ; $variable <= 300 ; $variable ++ ){ </li></ul><ul><li>if (($variable % 3 ) == 0 ){ </li></ul><ul><li>echo “$variable es divisible por 3<br>” ; </li></ul><ul><li>} </li></ul><ul><li>} </li></ul><ul><li>?> </li></ul>
  42. 42. Rodrigo Miranda Blog: www.rodrigomiranda.cl Estructuras de Control de Repetición <ul><li>Sentencia foreach: Con una lógica parecida a for, foreach se especializa para iterar sobre matrices. </li></ul><ul><li><?php </li></ul><ul><li>$arreglo = array (”siempre”, “casi siempre”, ”nunca”); </li></ul><ul><li>foreach ($arreglo as $valor){ </li></ul><ul><li>echo $valor; </li></ul><ul><li>} </li></ul><ul><li>$arreglo2 = array (“ 1 ”=>”siempre”, ” 2 ”=> “casi siempre”,” 3 ”=> ”nunca”); </li></ul><ul><li>foreach ($arreglo as $i => $valor){ </li></ul><ul><li>echo $valor; </li></ul><ul><li>} </li></ul><ul><li>?> </li></ul>

×