|
|
(36 revisiones intermedias por el mismo usuario no mostrado) |
Línea 1: |
Línea 1: |
| + | {{:Usuario:ManuelRomero/ProgramacionWeb/Distancia2018/Sintaxis/nav}} |
| + | |
| + | <!--__NOEDITSECTION__--> |
| + | {|cellpadding="5" cellspacing="6" style="width:100%;background:#DFFFFF; border-style:solid; border-width:1px; border-color:#0066FF;" |
| + | | width="100%" valign="top" style="padding: 0; margin:0px;" | |
| + | <span style="background:#FFFF99"> |
| + | </span> |
| [[Imagen:DWES_TituloTema3.gif|center]] | | [[Imagen:DWES_TituloTema3.gif|center]] |
| + | |} |
| | | |
| | | |
| __TOC__ | | __TOC__ |
| <div id=apuntes_distancia> | | <div id=apuntes_distancia> |
− | <div class="slide">
| |
− | ==Introducción a PHP==
| |
− | <br />
| |
− | {{MRM_Objetivos|Title=Sección de introducción a PHP|
| |
− | *En esta sección veremos qué es el lenguaje php y para qué sirve
| |
− | }}
| |
− | </div>
| |
| | | |
| <div class="slide"> | | <div class="slide"> |
− | ===Qué es php===
| |
− | *'''''PHP''''' (acrónimo de PHP: Hypertext Preprocessor)
| |
− | De php podríamos decir
| |
− | *Es un lenguaje de código abierto
| |
− | *Muy popular (Podríamos pensar en un estándar?), una gran comunidad de soporte en internet que aporta, colabora y soluciona dudas
| |
− | *Especialmente adecuado para desarrollo web (Se puede usar como lenguaje de escritorio, pero no es su principal propósito).
| |
− | *Actualmente está la versión 7.2.9 (16 Aug 2018), estando ya en testing la versión 7.3.
| |
− | *Ver las nuevas características de php
| |
− | {{MRM_Recursos de la Web|Title=Caracterísitcas de php 7|
| |
− | http://php.net/manual/es/migration70.php
| |
− | }}
| |
− | *Se usa mucho la versión 5.9
| |
− | </div>
| |
| | | |
− | <div class="slide">
| + | ===Dónde poner el código embebido=== |
− | ;características de php
| + | |
− | {{Tip|
| + | |
− | *'''''En las aplicaciones de desarrollo web '''''
| + | |
− | #Se ejecuta en el '''''servidor web'''''
| + | |
− | #Es '''''incrustado''''' en HTML.
| + | |
− | #El cliente solo ve '''''el resultado de la ejecución nunca el código'''''
| + | |
− | }}
| + | |
− | </div>
| + | |
− | | + | |
− | <div class="slide">
| + | |
− | ;Obtención del lenguaje de marcas para mostrar en el cliente
| + | |
− | [[Imagen:procesoPHP.png ]]
| + | |
− | {{MRM_Puntos clave|
| + | |
− | ;El documento PHP, una vez interpretado correctamente en el servidor, produce una página HTML que será enviada al cliente.
| + | |
− | }}
| + | |
− | </div>
| + | |
− | | + | |
− | <div class="slide">
| + | |
− | ;El servidor en acción
| + | |
| <br/> | | <br/> |
− | {{MRM_Puntos clave| | + | {{MRM_Pregunta|Dónde escribir código php |
− | ;El código PHP está embebido en documentos HTML,
| + | {{MRM_Pregunta|Title=Respuesta|Dónde queramos que se ejecute algo}} |
− | ;Esto permite introducir dinamismo fácilmente a un sitio web.
| + | |
| }} | | }} |
| </div> | | </div> |
− |
| |
| <div class="slide"> | | <div class="slide"> |
− | ;El servidor en acción
| + | <hr /> |
− | {{MRM_Puntos clave| | + | *Donde queramos que se ejecute algo |
− | ; El intérprete PHP ignora el texto del fichero HTML
| + | <hr/> |
− | ; Hasta que encuentra una etiqueta de inicio del bloque de código PHP embebido.
| + | [[Imagen:codigoPHP.png|center|500px]] |
− | *Entonces interpreta las instrucciones hasta el final de etiqueta generando la salida correspondiente que se añade al documento html que se entrega al cliente (en caso de que las instrucciones lo generen) | + | *Se ejecuta como si fuera un solo programa |
| + | *A la hora de incluir php podemos se usa mucho la filosofía Modelo Vista /Controlador que veremos en otro tema |
| + | {{MRM_Resumen|Title=Modelo vista controlador| |
| + | *Trata de separar el código según su cometido, de forma muy resumida |
| + | *Hay acciones que realizan cálculos y obtienen resultados (Controlador |
| + | *Hay acciones que lo que hacen es visualziar valores (Vista) |
| + | *Hay acciones que se encargan de interactuar con la base de datos (Modelo) |
| }} | | }} |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− |
| |
− | ===Restricciones del servidor con php===
| |
− | *Como PHP se ejecuta del lado del servidor sólo puede tener acceso a los datos del propio servidor.
| |
− | **No puede acceder a los recursos del cliente
| |
− | **No puede saber qué hora es en el cliente
| |
− | **No puede acceder a los archivos del cliente
| |
− | ***Salvo la excepción de las Cookies
| |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− | ===Configuraciones===
| |
− | *PHP se puede instalar como un servicio independiente (PHP-FPM (FastCGI Process Manager)) o como un módulo de apache php5-mod. Realmente es más eficaz por temas de memoria que corra como un servicio independiente, siendo éste, un tema más de administración que de desarrollo.
| |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− | ;Configuración
| |
− | Por comodidad (todo centrado en el servicio de apache2) en este módulo lo hemos instalado como un módulo de apache, pero en producción se suele instalar como servicio independiente (en este caso se ha de rebotar el servicio de apache o ngix (según servidor) independientemente del servicio de php según los ficheros de configuración que se modifiquen en un momento dado.
| |
− | En cualquier caso, al instalar php, bien como módulo de apache o como servicio independiente, se crea un fichero de cofiguración dónde tenemos las diferentes directivas que podremos modificar (recordad xdebug que modificamos en php.ini).
| |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− | ;Directivas de PHP.ini
| |
− | http://www.php.net/manual/es/ini.list.php
| |
− | ;Funciones que quedaron obsoletas en PHP 5.3.x
| |
− | http://php.net/manual/es/migration53.deprecated.php
| |
− | ;Características obsoletas en PHP 7.0.x
| |
− | http://php.net/manual/es/migration70.deprecated.php
| |
− | http://php.net/manual/es/migration70.incompatible.php
| |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− | ===Cómo escribir PHP===
| |
− | *Dentro de páginas html
| |
− | <source lang=php>
| |
− | '''<?php'''
| |
− | '' instrucciones''
| |
− | '''?>'''
| |
− | </source>
| |
− | *Nosotros siempre usaremos este estilo para escribir código
| |
− | *Lo podemos embeber en código html .... o no.
| |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− | ;Otros modos menos usados
| |
− | :Estilo asp
| |
− | <source lang=php>
| |
− | '''<%'''
| |
− | '' instrucciones''
| |
− | '''%>'''
| |
− | </source>
| |
− | *Para ello hemos de tener habilitado la etiqueta de php.ini
| |
− | asp_tags 1
| |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− | ;Estilo corto
| |
− | <source lang=php>
| |
− | '''<?'''
| |
− | '' instrucciones''
| |
− | '''?>'''
| |
− | </source>
| |
− | *Para ello hemos de tener habilitado la etiqueta de php.ini
| |
− | short_open_tag 1
| |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− | ;Sintaxis para editores HTML
| |
− | <source lang=php>
| |
− |
| |
− | '''<SCRIPT LANGAGE="PHP">'''
| |
− | '' instrucciones''
| |
− | '''</SCRIPT>'''
| |
− | </source>
| |
− |
| |
− | {{Tip|
| |
− | *En la versión 7.0.0 de php se elimina las etiquetas siguientes:
| |
− | #'''''<nowiki><%, %> (formato ASP)</nowiki>'''''
| |
− | #'''''<nowiki>#<%= (formato corto)</nowiki>'''''
| |
− | #'''''<nowiki>y la etiqueta de script <script language=""</nowiki>'''''></script>
| |
− | }}
| |
− | *Guardamos el fichero con extensión .php
| |
− | **Así sabemos que el interprete php tiene que ejecutar código
| |
− | </div>
| |
− |
| |
− | <div class="slide">
| |
− | {{MRM_Actividad|Title=Probando primer programa|
| |
− | {{Tip|existen una función llamada '''''phpinfo()'''''.
| |
− | *Vamos a probarla y ver la información que genera}}
| |
− | *Haz un programa que en php que ejecute la función '''''phpinfo()'''''
| |
− | }}
| |
− | </div>
| |
− | <div class="slide">
| |
− |
| |
− | {{MRM_Actividad|Title=Probando la extensión|
| |
− | ;Verifica a ver qué ocurre si la extensión del fichero no es php
| |
− | }}
| |
− | </div>
| |
− |
| |
| | | |
| </div> | | </div> |