Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
PROGRAMACIÓN CON FUNDAMENTOSDE FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 2SENA - Servicio Nacional de Aprendizaje. Estructura de contenidos Pág Introducción .......................................................................................................................4 Mapa de contenido ............................................................................................................5 1. Generalidades del lenguaje ...........................................................................................6 1.1. Historia de PHP ..........................................................................................................7 1.2. Programación en PHP ...............................................................................................7 1.2.1. Entorno de desarrollo XAMPP .................................................................................8 1.2.2. Entorno de desarrollo EasyPHP ..............................................................................9 1.3. Características del Lenguaje ................................................................................... 10 1.3.1. Comentarios ..........................................................................................................11 1.3.2. Instrucciones .........................................................................................................11 1.4. Modo de consola ..................................................................................................... 12 1.5. Modo embebido o incrustado en páginas web ........................................................ 13 2. Elementos del lenguaje PHP ...................................................................................... 14 2.1. Variables .................................................................................................................. 14 2.2. Constantes .............................................................................................................. 15 2.3. Tipos de datos ........................................................................................................ 16 2.3.1. Tipos de datos escalares ...................................................................................... 16 2.3.2. Tipos de datos compuestos .................................................................................. 16 2.4. Operadores.............................................................................................................. 18 2.5. Estructuras de Control ............................................................................................. 21 2.6. Funciones. ............................................................................................................... 29 2.7. Inclusión de librerías o bibliotecas de código. ......................................................... 30 2.8. Obtener información sobre el tipo de una variable .................................................. 30 2.9. Variables superglobales. ......................................................................................... 31 3. Usos prácticos de php ............................................................................................... 31 3.1. Formularios web ...................................................................................................... 31 3.1.1. Paso de variables a un programa PHP ................................................................ 32 3.2. Acceso a bases de datos desde PHP .................................................................... 36 Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 3SENA - Servicio Nacional de Aprendizaje. 3.2.1. mysqli o Mysql Improved ...................................................................................... 38 3.2.2. Librería mysql ....................................................................................................... 43 3.2.3. Librería PDO......................................................................................................... 43 3.3. Manejo de sesiones................................................................................................. 43 Glosario .......................................................................................................................... 45 Bibliografía...................................................................................................................... 46 Control del documento ................................................................................................... 47 Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 4SENA - Servicio Nacional de Aprendizaje. FUNDAMENTOS DE PROGRAMACIÓN CON PHP Las aplicaciones con interfaz de caracteres (CUI) o interfaz gráfica nativa (GUI) fueron el común denominador durante muchos años. Con el auge del Internet y con el crecimiento la conectividad de las empresas y hogares se hizo necesario el desarrollo de aplicaciones más robustas que se ejecutaran en un navegador y de esta manera pudieran estar disponibles a cualquier computador conectado a Internet. Para hacer más potentes las aplicaciones web se requería de un lenguaje que pudiera ejecutarse del lado del servidor y pudiera generar páginas HTML de manera más dinámica y además pudiera interactuar con bases de datos y demás recursos disponibles a los servidores. Es así como aparece el lenguaje PHP, el cual permite el desarrollo web con páginas más dinámicas generadas desde un servidor web que además puede interactuar con bases de datos libre como MySQL o Postgres o licenciadas como Oracle, SQL Server, Informix, entre otros. En este material de estudio se presentan al aprendiz los fundamentos de PHP como lenguaje procedural; la presentación de PHP como un lenguaje orientado a objetos se detallará en otro recurso adicional. Dentro de los temas a tratar están el manejo de variables, estructuras de control, estructuras cíclicas, arreglos, y una introducción a la interacción con bases de datos con PHP y el manejo de sesiones. Para lograr una mejor comprensión de los contenidos es importante que el aprendiz tenga claro los conceptos de diseño web y el manejo de bases de datos. El presente material de estudio es de nivel introductorio y cubre los aspectos más relevantes del lenguaje. Es importante que el aprendiz profundice el conocimiento con la bibliografía suministrada y con consultas a los recursos disponibles en la Internet. Introducción Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 5SENA - Servicio Nacional de Aprendizaje. Mapa de contenido PROGRAMACIÓN CON FUNDAMENTOSDE Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 6SENA - Servicio Nacional de Aprendizaje. Generalidades 1. Generalidades del lenguaje PHP es un lenguaje de programación interpretado y débilmente tipado, libre y gratuito que permite el desarrollo de páginas web dinámicas, junto al servidor Apache y la base de datos Mysql han creado una completa plataforma para desarrollo de aplicaciones web. Las páginas HTML con código PHP embebido que se ejecutan en el servidor pueden realizar accesos a bases de datos y otras tareas. El cliente solamente recibe una página con el código HTML resultante de la ejecución del programa PHP. Como la página resultante contiene únicamente código HTML es compatible con todos los navegadores. Figura 1. Diagrama de operación de PHP. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 7SENA - Servicio Nacional de Aprendizaje. 1.1. Historia de PHP • PHP/FI 1995 Creado por Rasmus Lerdorf permitía desarrollar pequeñas aplicaciones web dinámicas.• PHP 3.0 1997 Creado por Andy Gutmans y Zeev Zuraski. Una de sus grandes características era su gran extensibilidad. El soporte de sintaxis orientado a Objetos fue otra característica clave. Esta versión fue liberada oficialmente en Junio de 1998. • PHP 4.0 1999 Utilizó el motor “Motor Zend” de Zeev, Andy. Fue Oficialmente liberado en mayo de 2000. Además de la mejora de ejecución, incluía otras características claves como soporte para la mayoría de servidores web, sesiones HTTP, buffers de salida y muchas nuevas construcciones del Lenguaje. • PHP 5 2004 Utiliza el motor Zend Engine II. Entre sus características se encuentran: Mejor soporte a la programación orientada a Objetos. Mejoras de Rendimiento. Mejoras para MySQL y XML. Soporte integrado para SOAP. Manejo de Excepciones. • PHP 7 2015 Introduce nuevas funciones y características entre ellas se tienen: declaración de constantes tipo arreglo, clases anónimas, operador tipo nave espacial (<=>), declaración para el tipo de dato que retorna una función, entre otros. 1.2. Programación en PHP Para desarrollar en PHP se requiere un entorno de desarrollo compuesto por: A B Algunos ejemplos de plataformas que incorporan Apache (Servidor de páginas web), MySQL (Bases de Datos) y soporte al lenguaje PHP, son: a. LAMP (Linux). b. WAMP (Windows). c. MAMP (MacOSX). Un servidor web que tenga instalado una extensión (en linux) o librería (en windows) que permita identificar el código PHP y lo pueda enviar al intérprete de este lenguaje instalado en el servidor. Tener instalado el intérprete del lenguaje PHP en el servidor. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 8SENA - Servicio Nacional de Aprendizaje. Además del servidor web Apache, PHP también está disponible para Nginx, IIS, entre otros. 1.2.1. Entorno de desarrollo XAMPP La instalación de un ambiente de desarrollo que incorpore Apache, PHP y una base de datos de amplio uso como MySQL no fue una tarea fácil de realizar ya que se presentaban dificultades por incompatibilidades entre las distintas versiones de los productos, configuraciones propias de cada sistema operativo, entre otros. Para facilitar la labor a los programadores se han creado ambientes de desarrollo que incorporan los componentes anteriormente descritos sin que el desarrollador tenga que realizar complejas tareas de configuración. Uno de esos entornos es XAMPP que integra Apache, Mysql, PHP y otros lenguajes. Fue concebido por apachefriends.org y está disponible para plataformas Windows, Linux y MacOS. Su sitio de descarga es https://www.apachefriends.org/es/download.html. Una vez instalado el paquete, se debe iniciar el servidor mediante el panel de control de la herramienta. Es importante aclarar que el panel de control puede variar, dependiendo de la versión de XAMPP que se tenga instalada. Figura 2. Panel de control de XAMPP. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 9SENA - Servicio Nacional de Aprendizaje. Al copiar el archivo prueba.php al directorio “x:/xampp/htdocs” y abrirlo con un navegador deberá mostrar los siguiente: Figura 3. Resultado de la función phpinfo(). Un aspecto fundamental al momento de trabajar con PHP es la ruta donde se encuentran las páginas que debe procesar el servidor. Para el caso de Xampp, se debe ubicar la carpeta de instalación “xampp” y dentro de ésta carpeta ubicar la subcarpeta “htdocs”, donde se deben ubicar todas las páginas que se desarrollen. Para visualizar los resultados de una página PHP, se debe acceder desde el navegador web ingresando al sitio del servidor local, el cual se identifica con la palabra “localhost”. Solo se mostrarán resultados de las páginas publicadas en el directorio web “htdocs”. En este recurso se hace uso del entorno para desarrollar los ejemplos de código. 1.2.2. Entorno de desarrollo EasyPHP Otro entorno de desarrollo que integra las herramientas Apache, Mysql y PHP es EasyPHP y está disponible en http://www.easyphp.org/. Independientemente del entorno que se use se puede revisar que PHP está instalado en el servidor web ejecutando el siguiente código: // prueba.php <php> printf( phpinfo() ) ; ?> Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 10SENA - Servicio Nacional de Aprendizaje. Además de la versión de PHP también se muestran otros datos importantes de la instalación como el directorio donde está instalado xampp, la versión de la base de datos, entre otros. 1.3. Características del Lenguaje El código PHP, está embebido dentro del código HTML, esto significa que el intérprete solo ejecuta las instrucciones que están incluidas dentro de las etiquetas manejadas por el lenguaje. Todo lo que está fuera de las etiquetas PHP se deja tal como está, mientras que el resto se interpreta como código. La estructura general de una página web con código PHP embebido es la siguiente (COWBURN, 2017): <html> <body> <?php // El código php va aquí. ?> </body> </html> <?php // El código php va aquí. // Cuando solamente hay código PHP se puede omitir el tag de cierre. El archivo debe tener la extensión .php para que el servidor procese el código PHP embebido, de lo contrario lo ignorará. El tag de inicio estándar es “<? php” y el tag de cierre es “?>”. Existe la posibilidad de usar “tags” abreviados pero no se aconsejan para que el código quede más entendible. El tag de cierre se puede omitir cuando el archivo tiene solamente código PHP. Ejemplo: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 11SENA - Servicio Nacional de Aprendizaje. 1.3.1. Comentarios PHP al igual que otros lenguajes de programación maneja comentarios de una sola línea y de múltiples líneas, soporta el estilo de comentarios de los lenguajes de programación “C”, “C++” y de interfaz de comandos de UNIX. a. Comentarios de una sola línea: se puede realizar anteponiendo el símbolo “#” o dos barras inclinadas seguidas “//” al inicio de la línea. No necesitan cerrarse. b. Comentarios de más de una línea: se pueden realizar comentarios que abarquen más de una línea usando los símbolos “/*” al inicio y “*/” al final. <?php // este es comentario de una línea # este es otro comentario de una línea. echo "hola mundo" ; ?> <?php /* este es comentario abarca varias líneas. Los comentarios son útiles para documentar los programas. */ echo "hola mundo" ; ?> 1.3.2. Instrucciones Todas las instrucciones en PHP finalizan con punto y coma. Es muy importante que antes de incluir el conjunto de instrucciones, se inicie el bloque PHP “<? php” y una vez se terminen las instrucciones, se finalice el bloque con “?>”. Para construir las sentencias se necesitan diferentes elementos que ya se han trabajado en otros lenguajes de programación, estos elementos son, variables, constantes, operadores, estructuras de control, entre otros. Antes de iniciar con los ejercicios se debe tener en cuenta lo siguiente: 1. Crear el archivo con extensión php, el cual contiene el respectivo código HTML, estos conceptos los trabajaron previamente en el Objeto de aprendizaje “Introducción al diseño web con HTML”. 2. Dentro del código HTML, se debe vincular las respectivas instrucciones PHP. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 12SENA - Servicio Nacional de Aprendizaje. 3. Los archivos PHP, deben estar incluidos dentro de la carpeta htdocs de xampp. 1.4. Modo de consola Además de estar embebido o incrustado dentro de una página web el código PHP también puede ser interpretado en modo de consola. Para ejecutar programas php en modo de consola se deben seguir los siguientes pasos: a. Ejecutar la consola desde el administrador de la aplicación XAMPP. b. Ejecutar el programa con el comando la siguiente sintaxis : Figura 4. Ubicación delbotón para entrar a la consola en XAMPP. #php <nombre_del_programa>.php #php -v # php -v PHP 5.6.31 (cli) (built: Jul 5 2017 22:25:43) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies USUARIO@DESKTOP-7971D4H d:\xampp\htdocs # Para verificar la versión de PHP que se está ejecutando se puede usar el siguiente comando: El resultado del anterior comando es el siguiente: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 13SENA - Servicio Nacional de Aprendizaje. 1.5. Modo embebido o incrustado en páginas web Además del modo de consola PHP también se ejecuta dentro de las páginas web. Es esta modalidad la que más se usa de PHP ya que es la base para el desarrollo de páginas web dinámicas. Para ejecutar un programa PHP embebido en una página web se require que el servidor web como por ejemplo Apache, Nginx, IIS tengan instalada la extensión del lenguaje. Lo anterior permite que los archivos con extensión PHP sean procesados por el interprete de este lenguaje. A continuación el programa “hola mundo”. Figura 5. Resultado del programa holamundo.php. <html> <body> <?php echo "Hola Mundo"; ?> </body> </html> 1 2 3 4 5 6 7 <html> <body> <?php echo "Hola Mundo"; ?> </body> </html> 1 2 3 4 5 6 7 <html> <body> <?php echo "Hola Mundo"; ?> </body> </html> 1 2 3 4 5 6 7 Estas líneas de código se guardan con el nombre: “holamundo.php” en el directorio htdocs de la instalación XAMPP, generalmente “d:/xammp/htdocs/holamundo.php”. Una vez puesto el archivo en el directorio se puede visualizar en el navegador como se muestra a continuación: En el ejemplo anterior el código PHP incrustado en la página web es analizado por el intérprete del lenguaje. El resultado es dibujado en la sección <body> de la página. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 14SENA - Servicio Nacional de Aprendizaje. 2. Elementos del lenguaje PHP 2.1. Variables En PHP, las variables se representan con el signo dólar ($), seguido del respectivo nombre de variable. Sen Utilizan los estándares de los lenguajes de programación para nombrar variables y PHP es sensible a mayúsculas y minúsculas. Ejemplo: <?php // Ejemplos de declaración de variables. $nombre = "Pedro"; // variable tipo texto; $apellido = "Perez"; // variable tipo texto; $edad = 45; // variable numérica ; echo "El señor ". $nombre . " " . $apellido . " tiene una edad de ". $edad . " años. " ; ?> PHP es un lenguaje débilmente tipado ( en inglés “loosely typed“) y no requiere que las variables se definan antes de usarse. De acuerdo a su visibilidad y accesibilidad dentro de un programa las variables pueden ser de los siguientes tipos: a. Variables locales: son aquellas que se definen dentro de una función y son usadas exclusivamente por estas últimas. b. Variables globales: son aquellas que pueden ser accedidas dentro de cualquier parte de un programa. Por defecto las variables definidas por fuera de una función son globales. Dentro de una función se definen anteponiendo la palabra reservada “global” al nombre de la variable. c. Variables superglobales: son un tipo de variables especiales suministradas por PHP que contienen datos importantes para la codificación de aplicaciones. Están estructuradas como arreglos asociativos. Las variables superglobales suministradas por PHP son: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 15SENA - Servicio Nacional de Aprendizaje. 2.2. Constantes Las constantes son valores que no cambian a lo largo de un programa. En PHP se definén así: Figura 6. Variables superglobales de PHP. <?php define( "<Nombre de la constante>", "<valor>" ); ?> A continuación un ejemplo de constantes en PHP. Al ejecutar el programa genera el siguiente resultado: # php ejemplo7.php Ejemplo de una constante Servicio Nacional de Aprendizaje USUARIO@DESKTOP-7971D4H d:\xampp # Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 16SENA - Servicio Nacional de Aprendizaje. 2.3. Tipos de datos PHP al igual que todos los lenguajes de programación soporta varios tipos de datos unos simples o escalares y otros compuestos. 2.3.1. Tipos de datos escalares Los tipos de datos escalares o simples son aquellos que contienen sólo una magnitud ya se una valor numérico, texto, flotante, etc. Figura 7. Tipos de datos escalares. Para concatenar variables tipo texto se usa el símbolo “.”. Ejemplo: Al ejecutar el anterior código en la consola produce el siguiente resultado: # php concatenacion.php Buenos días Pedro Perez USUARIO@DESKTOP-7971D4H d:\xampp\ htdocs # 2.3.2. Tipos de datos compuestos Para cada subsistema se diseña y documenta su interfaz con otros subsistemas. <?php $nombre = "Pedro"; $apellido = "Perez"; echo “Buenos días" . $nombre . " " . $apellido ; ?> Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 17SENA - Servicio Nacional de Aprendizaje. * : Los objetos se estudiarán en el recurso “Programación Orientada a Objetos con PHP”. Una arreglo es PHP es realmente un emparejamiento o mapa ordenado. El emparejamiento está basado en valores y claves. Esta estructura puede usarse de múltiples formas (COWBURN,2017): a. Como un arreglo. b. Como una lista. c. Como tabla hash. d. Como un diccionario. e. Como pilas y colas. Para definir un arreglo en PHP se usa la siguiente sintaxis: $arreglo = array( "llave1" => "Valor1", "llave2" => "Valor2", ); $arreglo = [ "Llave1" => "Valor1", "Llave2" => "Valor2", ]; ); A partir de la versión 5.4. se puede también así: La clave puede ser un entero o un string. El valor puede ser de cualquier tipo. Cuando la llave es un string se puede llamar el arreglo un diccionario o un arreglo asociativo. Ejemplo: Figura 8. Tipos de datos estructurados. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 18SENA - Servicio Nacional de Aprendizaje. <?php $arreglo = [ "Jacinto", "Jose", "Pepita", "Mendieta" ] ; echo "Buenos días". $arreglo[0] ." ". $arreglo[1] ." ". $arreglo[2] ." ".$arreglo[3] . "\n"; var_dump($arreglo); ?> En el caso anterior PHP asignará una llave entera que inicia en 0. PHP suministra un conjunto de funciones que soportan la programación con arreglos entre algunas se tienen. Función Uso Descripción count count($arreglo) Retorna un entero con el número de elementos del arreglo is_array i s_array($arreglo) Retorna verdadero si la variable es un arreglo in_array i n_array($elemento, $arreglo) Retorna 1 o TRUE si el elemento está en el arreglo. array_keys a rray_keys($arreglo) Retorna un arreglo con los nombres de las llaves o con los índices del arreglo. Función Uso Descripción count count($arreglo) Retorna un entero con el número de elementos del arreglo is_array i s_array($arreglo) Retorna verdadero si la variable es un arreglo in_array i n_array($elemento, $arreglo) Retorna 1 o TRUE si el elemento está en el arreglo. array_keys a rray_keys($arreglo) Retorna un arreglo con los nombres de las llaves o con los índices del arreglo. 2.4. Operadores Los operadores se utilizan para realizar operaciones entre objetos, datos, identificadores, constantes y devuelven un valor. Los operadores en PHP se pueden dividir en las siguientes categorías: <?php $arreglo = [ "Nombre" => "Pedro", "Apellido" => "Perez", ]; echo “Buenos días". $arreglo["Nombre"] . " " . $arreglo["Apellido"] ; ?> Se pueden crear arreglos sin especificar la clave. Por ejemplo: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 19SENA - Servicio Nacional de Aprendizaje. b. De asignación El operador de asignación básico es el igual (=) y se utiliza para asignar un valor a otro. Mediante la utilización de estos operadoresse pueden realizar operaciones aritméticas, lógicas, de bit y de asignación con un único operador. Supongamos que necesitamos sumar un número a una variable y almacenar el resultado en la misma variable, como a continuación, lo que en algoritmos conocimos como acumulador: $acu = $acu + 2; En PHP se puede abreviar esta sentencia con el operador de atajo +=, de la siguiente manera: $acu += 2; La siguiente tabla muestra los operadores de asignación y su expresión equivalente: Figura 10. Operadores de asignación. Figura 9. Operadores aritméticos. a. Aritméticos Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 20SENA - Servicio Nacional de Aprendizaje. Figura 12. Operadores lógicos. d. Operadores lógicos Su uso radica en la manera como se quiere que se evalúe la condición, si se hace necesario que se evalúe las dos partes se utiliza el AND simple (&) o el OR simple (|). El comportamiento del AND y el OR lo muestra la siguiente tabla: Figura 11. Operadores de comparación. c. Operadores de comparación Un operador de comparación, como su nombre lo indica compara dos valores y determina la relación existente entre ellos. La respuesta que se obtiene es true o false. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 21SENA - Servicio Nacional de Aprendizaje. 2.5. Estructuras de Control En PHP, las estructuras de control, funcionan similar a la de otros lenguajes de programación, entre las más comunes están: a) Condicional simple (IF) Realiza las instrucciones a partir de una decisión evaluada. La sintaxis es la siguiente: <?php if (expr) Sentencia; // en caso de condición verdadera else Sentencia; // en caso de condición falsa ?> <?php while (expr) //evalúa la condición { <instrucciones> ; //instrucción que se repite mientras // condición sea verdadera }; ?> Ejemplo: <html> <body> <p>Ejemplo de una estructura condicional sencilla.<p><br> <?php echo "Codigo PHP de un condicional sencillo <br>" ; $a = 8; $b = 3; if( $a < $b ){ echo "a es menor que b" ; } else { echo "a es mayor que b" ; }; ?> </body> </html> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 b) Ciclo mientras (WHILE) En esta estructura el número de iteraciones del ciclo depende de la condición que se plantee al comienzo del proceso. La sintaxis es la siguiente: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 22SENA - Servicio Nacional de Aprendizaje. El ejemplo a continuación muestra en pantalla los números del 1 al 10. Al ejecutar el ejemplo en la consola de PHP se obtiene lo siguiente: # php ejemplo1.php Codigo PHP para generar numeros del 1 al 10 el valor de i es 1 el valor de i es 2 el valor de i es 3 el valor de i es 4 el valor de i es 5 el valor de i es 6 el valor de i es 7 el valor de i es 8 el valor de i es 9 USUARIO@DESKTOP-7971D4H d:\xampp # c) Ciclo haga mientras (DO … WHILE) Este bucle es similar al While, lo que los diferencia es que la condición se evalúa hasta el final de cada iteración y no al comienzo. En esta estructura el número de iteraciones del ciclo depende de la condición que se plantee al final del proceso. Sintaxis: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 23SENA - Servicio Nacional de Aprendizaje. <?php do { <instruccion 1> ; <instruccion 2> ; <instruccion n> ; } while (<expresión lógica>) // evalúa condición y repite ciclo en //caso de ser verdadera ?> Ejemplo: Al ejecutar en una consola con PHP aparece lo siguiente: # php ejemplo2.php Codigo PHP para generar numeros del 1 al 5 el valor de i es 1 el valor de i es 2 el valor de i es 3 el valor de i es 4 el valor de i es 5 USUARIO@DESKTOP-7971D4H d:\xampp # d) Ciclo repita n veces (FOR) En esta estructura el número de iteraciones se conoce antes de ejecutarse el ciclo. La sintaxis es: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 24SENA - Servicio Nacional de Aprendizaje. <?php for (expresión 1; expresión 2; expresión 3) { <sentencia 1> ; <sentencia 2> ; <sentencia n> ; } ; ?> Donde: expresión 1: inicializa el contador. expresión 2: determina el número de repeticiones. expresión 3: establece el incremento en cada repetición. Ejemplo: Al ejecutar el programa aparece lo siguiente: # php ejemplo3.php Este es un ejemplo del uso del ciclo for en PHP Linea 1 Linea 2 Linea 3 Linea 4 Linea 5 Linea 6 Linea 7 USUARIO@DESKTOP-7971D4H d:\xampp # Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 25SENA - Servicio Nacional de Aprendizaje. e) Decisión basada en múltiples opciones (SWITCH) También es conocida como “case”, y se utiliza para evaluar el contenido de una variable y determinar diferentes acciones a ejecutar dependiendo de ese valor, que puede ser cualquier expresión que evalúe a un tipo simple. Su sintaxis es: <?php switch (variable_a_evaluar) { case <valor1>: <sentencias> ; break; case <valor2>: <sentencias> ; break; case <valorn: <sentencias> ; break; default // si no corresponde con ninguno de los // valores anteriores <sentencias> ; } ?> Ejemplo: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 26SENA - Servicio Nacional de Aprendizaje. Al ejecutar el programa aparece lo siguiente: f) Ciclo foreach Este ciclo proporciona una manera directa de trabajar con arreglos y objetos. Su primera forma de uso es: # php ejemplo4.php Ejemplo del uso de comando switch en PHP Solo me programaron entre uno y cuatro USUARIO@DESKTOP-7971D4H d:\xampp # Donde: Nombre del arreglo: nombre del arreglo que se va a recorrer. Variable_auxiliar: nombre de la variable auxiliar que tomará el valor de cada elemento del arreglo. Ejemplo: <?php foreach (<nombre_del_arreglo> as <variable_auxiliar>) { <sentencia 1> ; <sentencia 2> ; <sentencia n> ; } ; ?> Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 27SENA - Servicio Nacional de Aprendizaje. <?php $arreglo = [ "Jacinto", "Jose", "Pepita", "Mendieta" ] ; $j = 0; foreach($arreglo as $elemento) { echo "$j: $elemento \n"; ++$j ; } ?> <?php foreach (<nombre_del_arreglo> as <llave> => <variable_ auxiliar>) { <sentencia 1> ; <sentencia 2> ; <sentencia n> ; } ; ?> Al ejecutar el código se muestra lo siguiente en pantalla: La segunda forma de uso es útil para recorrer arreglos asociativos o diccionarios: Donde: Nombre del arreglo: nombre del arreglo asociativo que se va a recorrer. Llave: nombre de la llave del arreglo asociativo. Variable_auxiliar: nombre de la variable auxiliar que tomará el valor de cada elemento del arreglo. # php foreach1.php 0: Jacinto 1: Jose 2: Pepita 3: Mendieta USUARIO@DESKTOP-7971D4H d:\xampp # Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 28SENA - Servicio Nacional de Aprendizaje. <?php $arreglo = [ "Primer_Nombre" => "Pedro", "Segundo_Nombre" => "Pablo", "Primer_Apellido" => "Perez", "Segundo_Apellido" => "Pereira" ]; foreach($arreglo as $llave => $elemento) { echo "$llave: $elemento \n"; }; ?> # php foreach2.php Primer_Nombre: Pedro Segundo_Nombre: Pablo Primer_Apellido: Perez Segundo_Apellido: Pereira USUARIO@DESKTOP d:\xampp # Al ejecutar el código se muestra lo siguiente en pantalla: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 29SENA - Servicio Nacional de Aprendizaje. # php ejemplo6.php Ejemplo de un programa PHP con una funcion Solo se de domingo a martes USUARIO@DESKTOP-7971D4H d:\xampp # 2.6. Funciones. Las funciones son usadas en los lenguajes de programación para evitar la repetición de código y hacer los programas más entendibles. Para crear una función en PHP se sigue la siguiente sintaxis: <?php function(<parámetros>){// bloque de código return <variable> }; ?> A continuación un ejemplo de una función: Al ejecutar el código se muestra lo siguiente en pantalla: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 30SENA - Servicio Nacional de Aprendizaje. 2.7. Inclusión de librerías o bibliotecas de código. Las librerías o bibliotecas de código permiten que un programa pueda acceder a las funciones o bloques de código definidas en otros programas PHP. La sintaxis es la siguiente: <?php include_once ″<nombre_biblioteca.php>″ ; ?> Una vez ejecutada la línea de código el programa puede hacer uso de las funciones provistas por esa biblioteca como si se hubieran definido en el programa actual. También se puede usar la palabra reservada “include” en vez de “include_once”. La diferencia es que esta última revisa si la librería ya ha sido cargada y dado el caso no vuelve a cargarla evitando así errores. “include”, por el contrario, trata de cargar nuevamente la librería generando errores ya que estaría duplicando el código. 2.8. Obtener información sobre el tipo de una variable En muchas ocasiones se hace necesario capturar el tipo de una variable, para este proceso PHP cuenta con unas funciones predefinidas. Si al utilizar dichas funciones, la respuesta es verdadera, significa que la variable es del tipo que maneja la función, si la respuesta es falsa, es porque la variable es de otro tipo. Figura 13. Funciones para determinar el tipo de una variable. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 31SENA - Servicio Nacional de Aprendizaje. 2.9. Variables superglobales. PHP suministra un tipo de variables que contienen información útil para el desarrollo de aplicaciones. A continuación un tabla con las variables superglobales: Figura 14.Variables superglobales de PHP. 3. Usos prácticos de php A diferencia de Javascript que se ejecuta del lado el cliente (client-side programming) PHP es un lenguaje que se ejecuta del lado del servidor (server-side programming) y permite la generación de páginas web dinámicas, es decir, páginas que se crean de acuerdo a la lógica del momento en que se llaman. Al estar del lado del servidor PHP se puede comunicar fácilmente con bases de datos y otros recursos que permiten que las aplicaciones PHP realicen las mismas tareas que pueden ejecutar las aplicaciones nativas o de escritorio. A continuación algunas tareas importantes que se pueden realizar con PHP. 3.1. Formularios web En el recurso introductorio al diseño web de ADSI se introdujo al aprendiz del concepto de formularios web, sin embargo, estos formularios no tenían mayor funcionalidad ya que los datos capturados no podían ser enviados a un servidor para su procesamiento. Con PHP se pueden tomar esos datos y procesarlos ya sea a través de un programa convencional o interactuando con recursos del sistema como bases de datos, archivos del filesystem, entre otros. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 32SENA - Servicio Nacional de Aprendizaje. 3.1.1. Paso de variables a un programa PHP Para el desarrollo de formularios con PHP se requiere primero entender cómo se pasan las variables desde el formulario web hacia el programa PHP que hace el procesamiento. Existen dos maneras de pasar variables desde una página web a PHP: con el método GET y con el método POST. a. Método GET usando una URL Mediante este sistema las variables se pasan a un programa PHP usando la URL. Por ejemplo: <a href=”holamundo.php?nombre=pedro&apellido=perez> Enlace a Pedro Pérez </a> <form action=”<nombre_programa>.php”> Enunciado del campo: <input type=”text” name=”campo1”> <input type=”submit” value=”Enviar”> </form> En el ejemplo se están pasando los parámetros “nombre” y “apellido” al programa “holamundo.php” a través de una URL usando el elemento HTML ancla (<a>). De la expresión se tiene que: El símbolo “?” indica el inicio de los parámetros. El símbolo “&” es el separador de parámetros. El símbolo “=” indica el valor de la variable. b) Método GET a través de un formulario Una estructura básica de un formulario HTML procesado con un programa PHP es: Donde el atributo “action” indica el programa al cual se le enviarán las variables contenidas en los campos input. Si se omite el atributo “action” el formulario enviará las variables al mismo programa, es decir, en lugar de hacer un llamado a un programa externo como: “otro_ programa.php?parametro1=uno¶metro2=dos” el sistema pasará los parámetros al mismo programa así: “mismo_programa.php?parametro1=uno¶metro2=dos” y recargará la página. Lo anterior se ilustra con el siguiente ejemplo: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 33SENA - Servicio Nacional de Aprendizaje. <!--formulario.html --> <html> body> <form action="programa1.php"> Nombre: <input type=text name="nombre"><br> Apellido: <input type=text name="apellido"><br> input type=submit value="Enviar"> </form> /body> </html> 1 2 3 4 5 6 7 8 9 10 Al solicitar al navegador la página: http://localhost/formulario.html. Aparece lo siguiente: Figura 15. Página web con un formulario. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 34SENA - Servicio Nacional de Aprendizaje. Al llenar campos con datos de ejemplo se tiene lo siguiente: Figura 16. Página web con un formulario diligenciado. Figura 17. Página resultante de programa1.php usando método GET. Al oprimir el botón de enviar se obtiene lo siguiente: Se puede observar que las variables del formulario aparecen en la URL de la página. También se observa que en la página se dibujó el resultado del código PHP. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 35SENA - Servicio Nacional de Aprendizaje. c. Formulario con método POST El método por defecto usado por los formularios para el envío de las variables de un formulario es GET. Lo anterior quiere decir que si no se especifica el método el navegador usará el método GET. En el método POST las variables no se anexan a la URL sino que se anexan al cuerpo de la solicitud del protocolo HTTP (“HTTP request”) y por tanto no son visibles en la barra de navegación. En el ejemplo anterior si se usa el método POST el programa queda como sigue: <!--formulario.html --> <html> body> <form action="programa1.php"method=post> Nombre: <input type=text name="nombre"><br> Apellido: <input type=text name="apellido"><br> input type=submit value="Enviar"> </form> /body> </html> 1 2 3 4 5 6 7 8 9 10 De los anteriores programas se tiene: 1. En la definición de la forma en el archivo html se especificó el atributo “method=post”. 2. En el programa PHP la variable que se consulta es $_POST. Al abrir el formulario en el navegador y oprimir el botón enviar se obtiene lo siguiente: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 36SENA - Servicio Nacional de Aprendizaje. Figura 18. Página resultante de programa1.php usando el método POST. Se puede observar que en la barra de navegación no aparecen los parámetros. Los parámetros pueden ser enviados por cualquiera de los dos métodos sin embargo se debe tener en cuenta lo siguiente: • La longitud de una URL está limitada a 3000 caracteres incluyendo los parámetros. Por tanto si se requiere enviar información de una forma que sobrepase ese número se debe usar el método POST. • Los datos enviados con el método GET son visibles en la barra de navegación. Por lo anterior si se está manejando información sensible o confidencial no es buena opción usar este método. • Las URL usadas en el método POST no se pueden guardar como un “bookmark”. 3.2. Acceso a bases de datos desde PHP Una de los beneficios de usar PHP es que ya trae incorporado el código fuente para acceder ala mayoría de las bases de datos. El flujo que se sigue para el procesamiento de páginas web con código PHP incorporado que acceden a bases de datos es como se muestra en la figura 19. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 37SENA - Servicio Nacional de Aprendizaje. El proceso para interactuar con bases de datos usando PHP es así: a. Conectarse a la base de datos. b. Seleccionar la base de datos a usar. c. Construir o armar la sentencia SQL. d. Ejecutar la consulta. e. Procesar los datos recibidos. f. Ejecutar los pasos c) al e) hasta que se requiera. g. Desconectarse de la base de datos. Para desarrollar los ejemplos de este recurso se ha creado una base de datos de prueba con el siguiente script: 3.2.1. mysqli o Mysql Improved Figura 19. Esquema de operación de PHP con bases de datos. create database adsi ; create table ciudades ( codigo text, nombre text ) ; insert into ciudades ( codigo, nombre ) values ( "05001", "MEDELLIN" ); insert into ciudades ( codigo, nombre ) values ( "05002", "ABEJORRAL" ); insert into ciudades ( codigo, nombre ) values ( "05004", "ABRIAQUI" ); insert into ciudades ( codigo, nombre ) values ( "05021", "ALEJANDRIA" ); Las librerías para acceder a bases de datos usando PHP son: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 38SENA - Servicio Nacional de Aprendizaje. Es una librería propia para la base de datos MySQL que, al momento de escribir el recurso, está soportada y en ciclo de vida activo. Fue introducida con la versión 5 de PHP. Entre sus características están: a. Interfaz orientada a objetos. b. Tiene un lenguaje procedural. c. Permite conexiones persistentes. d. Soporta procedimientos almacenados. e. Soporte para transacciones. El siguiente es la estructura para acceder a una base de datos MySQL usando la librería mysqli. En el ejemplo se tiene lo siguiente: 1 $conn = new mysqli("<host>", "<usuario>", "<clave>", "<base_de_datos>" ) ; 2 if( $conn->connect_errno ) { 3 echo "Falla al conectarse a Mysql ( ". $conn->connect_errno . ") " . 5 $conn->connect_error ; 6 } else { 7 echo $conn->host_info. "\n" ; 8 } ; 1. El parámetro “host” es el nombre o la IP del servidor MySQL. 2. El parámetro “usuario” es el usuario de MySQL. 3. El parámetro “clave” es la clave del usuario en MySQL. 4. El parámetro “base de datos” es el nombre de la base de datos en MySQL que se quiere acceder. La librería mysqli tiene dos formas de operar: con programación procedural o con programación orientada a objetos. En este recurso se usará la orientada a objetos. Una vez establecida la conexión se pueden realizar las siguientes operaciones: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 39SENA - Servicio Nacional de Aprendizaje. 1 <?php 2 $conn = new mysqli("localhost", "desarrollador", "adsi2017", "citas" ) ; 3 if( $conn->connect_errno) { 4 echo "Falla al conectarse a Mysql ( ". $conn->connect_errno . ") " . 5 $conn->connect_error ; 6 } else { 7 echo $conn->host_info. "\n" ; 8 } ; 9 ?> Si la conexión es exitosa aparece lo siguiente en una consola PHP: Si la conexión no es exitosa aparece lo siguiente en pantalla: USUARIO@DESKTOP-7971D4H d:\xampp # php database1.php localhost via TCP/IP USUARIO@DESKTOP-7971D4H d:\xampp # USUARIO@DESKTOP-7971D4H d:\xampp # php database1.php Falla al conectarse a Mysql ( 1045) Access denied for user ‘desarrollador’@’localhost’ (using password: YES) USUARIO@DESKTOP-7971D4H d:\xampp # a. Ejecutar sentencias SQL que no devuelven registros Para ejecutar una sentencia SQL se usa el método “query”. La sintaxis es la siguiente: En el ejemplo anterior el resultado de la consulta queda almacenado en el objeto Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 40SENA - Servicio Nacional de Aprendizaje. if( $mysqli->query(“<sentencia sql>”) === TRUE ) { echo “Se ejecutó la sentencia con éxito”; } else { echo “Hubo un error ...” ; }; 01<?php 02 $conn = new mysqli("localhost", "desarrollador", "adsi2017", "adsi" ) ; 03 if( $conn->connect_errno) { 04 echo "Falla al conectarse a Mysql ( ". $conn->connect_errno . ") " . 05 $conn->connect_error ; 06 exit() ; 07 } ; 08 09 if($resultado = $conn->query("select codigo, nombre from ciudades ") ){ 10 11 while($registro = $resultado->fetch_assoc() ){ 12 13 echo $registro["codigo"] . " " . $registro["nombre"] . "\n" ; 14 15 } ; 16 }; 17 18 $resultado->free(); 19 $conn->close(); 20?> if( $resultado = $mysqli->query(“<sentencia sql>”) ) { echo “La consulta devolvió “. $resultado->num_rows . “ registros”; } else { echo “Hubo un error ...” ; }; b. Ejecutar sentencias SQL que devuelven registros “$resultado . c. Recorrer los registros devueltos en una consulta con el método fetch_assoc Para recorrer los registros se pueden usar varios métodos. Uno de ellos es “fetch_assoc” que retorna cada registro como un arreglo asociativo. A continuación un ejemplo: Del código anterior se tiene: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 41SENA - Servicio Nacional de Aprendizaje. a. De las líneas 2 al 7 se realiza la conexión a la base de datos. b. La línea 6 indica que si no se pudo conectar a la base de datos termine abruptamente el programa. c. La línea 9 pregunta si el query arrojó resultados. Si está vacío no se entra al ciclo while. d. En las líneas 11 al 15 se ejecuta el ciclo while si el resultado devolvió uno o más registros. e. En la línea 11 se utiliza la variable “$registro” que se convertirá en un arreglo asociativo una vez se ejecute el método “fetch_assoc”. f. En la línea 13 se extraen los campos del arreglo asociativo y se muestran en el dispositivo de salida. g. En la línea 18 se libera la memoria utilizada por el objeto “$resultado”. h. En la línea 19 se cierra la conexión. Al ejecutar el código anterior en la consola de PHP se obtiene lo siguiente: # php database3.php 05001 MEDELLIN 05002 ABEJORRAL 05004 ABRIAQUI 05021 ALEJANDRIA USUARIO@DESKTOP-7971D4H d:\xampp\htdocs El mismo código se puede ejecutar dentro de una página web, solo se debe incrustar dentro de la sección <body> así: <html> <body> <programa php> </body> </html> Para este ejemplo también se debe cambiar el salto de línea “\n” por el elmento HTML “<br>” o break para que tenga el mismo efecto. Luego se debe copiar el archivo en el directorio “htdocs” del directorio raíz de “xampp”. Al abrir la página con un navegador se obtiene lo siguiente: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 42SENA - Servicio Nacional de Aprendizaje. Figura 20. Resultado del programa database3.php. d. Recorrer los registros devueltos en una consulta con el método fetch_object En este ejemplo se usó el método “fetch_assoc” el cual retorna un arreglo asociativo. PHP también provee el método “fetch_object” el cual retorna los registros como un objeto. Si se hiciera el ejemplo anterior con este método el ciclo while que recorre los registros queda así: 09 if($resultado = $conn->query("select codigo, nombre from ciudades ") ){ 10 11 while($registro = $resultado->fetch_object() ){ 12 13 echo $registro->codigo . " " . $registro->nombre . "\n" ; 14 15 } ; 16 }; $resultado->close(); $mysqli->close() ; Se puede observar que la variable “$registro” ya no es un arreglo asociativo sino un objeto y los campos se convierten en atributos del mismo. e. Cerrar la consulta Una vez se hayan procesado los registros y no se requieran más los resultados se debe cerrar el objeto con el método “close” así: f. Cerrar la conexión Cuando no se necesite más la conexión ésta se debe cerrar con el método “close” así: Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 43SENA - Servicio Nacional de Aprendizaje. 3.2.2.Librería mysql Esta librería está descontinuada y no se debería usar para proyecto nuevos. Se deben usar las demás librerías mencionadas en este recurso. 3.2.3. Librería PDO Además de mysqli PHP también suministra la librería PDO o PHP Data Objects que es orientada a objetos y además de MySQL también permite el acceso a otras bases de datos como Postgresql , Oracle, Informix, Firebase, entre otras. Este recurso hace uso de la librería mysqli y la información acerca de la librería PDO es sólo de interés general. 3.3. Manejo de sesiones En el desarrollo de software muchas veces el programador requiere manejar datos a lo largo de toda una aplicación. Aunque utilizar una base de datos es una solución posible no siempre es práctico o no siempre se dispone de una base de datos. En el caso de PHP el código se ejecuta en el servidor el cual puede estar atendiendo muchos usuarios al mismo tiempo. Por otra parte el protocolo HTTP sobre el cual se apoya PHP es “stateless” , es decir, no conoce quién está haciendo las peticiones, sólo las atiende y luego se “olvida”. Una primera solución a este problema fueron las “cookies” que son unos pequeños archivos que se almacenan en el computador del cliente y almacenan datos propios de ese usuario. Las “cookies” al ser archivos que se almacenan en el computador cliente y el servidor no tiene control sobre ellas. Por lo anterior pueden ser borradas o alteradas. Para resolver la anterior problemática PHP suministra una variable superglobal llamada $_SESSION el cual es un arreglo asociativo que mantiene mientras se ejecuta una aplicación. Los pasos para apoyar la programación con base en esta variable superglobal es la siguiente: a. Iniciar o reiniciar sesión Para iniciar una sesión se utiliza la instrucción “session_start()” en cada programa PHP. Este instrucción indica a PHP que haga disponible la variable $_SESSION en el programa actual. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 44SENA - Servicio Nacional de Aprendizaje. b. Crear, consultar o modificar elementos del arreglo asociativo $_SESSION Para crear un elemento solo se le debe asignar un valor de la misma manera que se hacen con todas las variables en PHP. Por ejemplo: $_SESSION[“usuario”] = “desarrollador”. Si el elemento “usuario” de la variable $_SESSION ya estaba creada entonces su valor se modificará al último ingresado. El arreglo $_SESSION se puede consultar como cualquier otro arreglo asociativo simplemente accediendo al elemento a través de su nombre. Ejemplo: echo $_ SESSION[“usuario”]. c. Terminación de la sesión Una vez se termine la sesión se debe proceder a vaciar la variable $_SESSION con la instrucción: session_unset() seguido por session_destroy(). Lo anterior libera los recursos de memoria que el servidor empleaba para almacenar esos datos. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 45SENA - Servicio Nacional de Aprendizaje. Glosario Apache: servidor web de amplio uso para alojar páginas web. Bookmark: enlace a Internet o URL que se guarda en texto plano para usarlo posteriormente. Cookie: archivo pequeño que contiene información del cliente. CSS: acrónimo de Cascade-Style Sheet. Hojas de estilos en cascada. CUI: acrónimo de Caracters User Interface. Interfaz de usuario de caracteres. GUI: acrónimo de Graphics User Interface. Interfaz gráfica de usuario. IIS: acrónimo de Internet Information Services. Servidor web desarrollado por Microsoft. HTML: acrónimo de HyperText Markup Languaje. Lenguaje de marcación de hipertextos. HTTP: acrónimo de HyperText Transfer Protocol. Protocolo para el envío y recepción de páginas web. Javascript: lenguaje de programación interpretado, que se ejecuta del lado del cliente (navegador web). Librería: conjunto de archivos con programas que proveen servicios a las aplicaciones. Nginx: servidor web de amplio uso para alojar páginas de web. PDO: acrónimo de PHP Data Objects. Tecnología de PHP para conectarse a bases de datos. PHP: acrónimo de Hypertext Preprocesor. Lenguaje de programación para internet. Unario: operador aritmético o lógico que opera solamente sobre un argumento u operando. Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 46SENA - Servicio Nacional de Aprendizaje. Cowburn P, (Ed) 2017. PHP Manual. Recuperado de http://php.net/manual/en/ Nixon, R. 2015. Learning PHP, MySQL & Javascript Fourth Edition. O’reilly. Cambridge. Bibliografía Fundamentos de programación con PHP FAVA - Formación en Ambientes Virtuales de Aprendizaje 47SENA - Servicio Nacional de Aprendizaje. Control del documento Registered trademark Copyright (c) 2017, XAMPP. EasyPHP 2000 - 2017. MySQL - licencia dual GNP/Licencia Comercial © ORACLE Corporation. 2017. Todos los derechos reservados. FUNDAMENTOS DE PROGRAMACIÓN EN PHP Centro Industrial de Mantenimiento Integral - CIMI Regional Santander Catalina Martínez Ávila Rita Rubiela Rincón Badillo Magda Milena García G. (V1) Nelson Mauricio Silva M. (V2) Rosa Elvia Quintero Guasca Claudia Milena Hernández Naranjo Santiago Lozada Garcés Francisco José Lizcano Reyes Víctor Hugo Tabares Carreño Líder línea de producción: Asesores pedagógicos: Diseño multimedia: Líder expertos temáticos: Experto temático: Programador: Producción de audio: Este material puede ser distribuido, copiado y exhibido por terceros si se muestra en los créditos. No se puede obtener ningún beneficio comercial y las obras derivadas tienen que estar bajo los mismos términos de la licencia que el trabajo original. Introducción Mapa de contenido 1. Generalidades del lenguaje 1.1. Historia de PHP 1.2. Programación en PHP 1.2.1. Entorno de desarrollo XAMPP 1.2.2. Entorno de desarrollo EasyPHP 1.3. Características del Lenguaje 1.3.1. Comentarios 1.3.2. Instrucciones 1.4. Modo de consola 1.5. Modo embebido o incrustado en páginas web 2. ELEMENTOS DEL LENGUAJE PHP 2.1. Variables 2.2. Constantes 2.3. Tipos de datos 2.3.1. Tipos de datos escalares 2.3.2. Tipos de datos compuestos 2.4. Operadores 2.5. Estructuras de Control 2.6. Funciones. 2.7. Inclusión de librerías o bibliotecas de código. 2.8. Obtener información sobre el tipo de una variable 2.9. Variables super-globales. 3. Usos prácticos de php 3.1. Formularios web 3.1.1. Paso de variables a un programa PHP 3.2. Acceso a bases de datos desde PHP 3.2.1 mysqli o Mysql Improved 3.2.2. Librería mysql 3.2.3. Librería PDO 3.3. Manejo de sesiones Glosario Bibliografía Control del documento
Compartir