Diferencia entre revisiones de «Plantilla:PHP/Introduccion»
De WikiEducator
| (45 revisiones intermedias por el mismo usuario no mostrado) | |||
| Línea 1: | Línea 1: | ||
{{#widget:Slides}} | {{#widget:Slides}} | ||
<div class="slides layout-regular template-default"> | <div class="slides layout-regular template-default"> | ||
| + | __NOTOC__ | ||
| + | |||
| + | <div class="slide"> | ||
| + | <span id=indice></span> | ||
| + | <div class="toc"> | ||
| + | <div class="toctitle"><h3>Contenido</h3></div> | ||
| + | <ul> | ||
| + | <li>[[#introduccion|1 Introducción a PHP]]</li> | ||
| + | <ul> | ||
| + | <li>[[#que_es_php|1.1 Qué es PHP]]</li> | ||
| + | <li>[[#restricciones|1.2 Restricciones del servidor con PHP]]</li> | ||
| + | <li>[[#configuraciones|1.3 Configuraciones]]</li> | ||
| + | <li>[[#versiones|1.4 Versiones de PHP]]</li> | ||
| + | <li>[[#resumen_funcionalidades|1.5 Resumen de nuevas funcionalidades]]</li> | ||
| + | <li>[[#php84|1.6 PHP 8.4 (Versión actual- Octubre 2025)]]</li> | ||
| + | <li>[[#como_escribir|1.7 Cómo escribir PHP]]</li> | ||
| + | </ul> | ||
| + | </ul> | ||
| + | </div> | ||
| + | </div > | ||
| + | |||
| + | |||
| + | |||
| + | |||
<div class="slide"> | <div class="slide"> | ||
| − | ==Introducción a PHP== | + | <span id="introduccion"></span> |
| + | ==Introducción a PHP [[#indice|(↑ volver al índice)]]== | ||
</div> | </div> | ||
<div class="slide"> | <div class="slide"> | ||
| − | ===Qué es php=== | + | <span id="que_es_php"></span> |
| + | ===Qué es php [[#indice|(↑ volver al índice)]]=== | ||
*'''''PHP''''' (acrónimo de PHP: Hypertext Preprocessor) | *'''''PHP''''' (acrónimo de PHP: Hypertext Preprocessor) | ||
De php podríamos decir | De php podríamos decir | ||
| Línea 61: | Línea 87: | ||
<div class="slide"> | <div class="slide"> | ||
| − | + | <span id="restricciones"> | |
| − | ===Restricciones del servidor con php=== | + | ===Restricciones del servidor con php [[#indice|(↑ volver al índice)]]=== |
| + | </span> | ||
*Como PHP se ejecuta del lado del servidor sólo puede tener acceso a los datos del propio servidor. | *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 acceder a los recursos del cliente | ||
| Línea 71: | Línea 98: | ||
<div class="slide"> | <div class="slide"> | ||
| − | ===Configuraciones=== | + | <span id="configuraciones"></span> |
| − | ; | + | ===Configuraciones [[#indice|(↑ volver al índice)]]=== |
| − | *Un servicio independiente utilizando | + | ;PHP se puede instalar de dos formas: |
| − | *Un módulo de Apache, usando | + | *Un servicio independiente utilizando '''PHP-FPM''' (FastCGI Process Manager) |
| + | *Un módulo de Apache, usando '''php8.3-mod''' (noviembre del 2024). | ||
</div> | </div> | ||
| Línea 80: | Línea 108: | ||
;Configuraciones | ;Configuraciones | ||
*Ejecutar '''PHP''' como un servicio independiente con '''PHP-FPM''' suele ser más eficiente en términos de gestión de memoria, lo que lo convierte en una elección preferida para entornos de producción. Esta decisión está más relacionada con la administración de servidores que con el desarrollo en sí. | *Ejecutar '''PHP''' como un servicio independiente con '''PHP-FPM''' suele ser más eficiente en términos de gestión de memoria, lo que lo convierte en una elección preferida para entornos de producción. Esta decisión está más relacionada con la administración de servidores que con el desarrollo en sí. | ||
| + | </div> | ||
| + | |||
| + | |||
| + | |||
| + | <div class="slide"> | ||
| + | ;Configuración | ||
| + | *Por comodidad, vamos a '''instalar PHP como un módulo de Apache2''', ya que esto permite tener todo centrado en el servicio de Apache. | ||
| + | *Sin embargo, en entornos de producción, es común instalarlo como un servicio independiente (PHP-FPM). | ||
| + | *En este caso, cuando se hacen cambios en los archivos de configuración, es necesario reiniciar tanto el servicio de Apache o Nginx (según el servidor utilizado) como el servicio de PHP de manera independiente. | ||
</div> | </div> | ||
<div class="slide"> | <div class="slide"> | ||
;Configuraciones | ;Configuraciones | ||
| − | *En cualquier caso, al instalar PHP, ya sea como un módulo de Apache o como un servicio independiente, se genera un archivo de configuración | + | *En cualquier caso, al instalar PHP, ya sea como un módulo de Apache o como un servicio independiente, se genera un archivo de configuración , donde encontramos ''diversas directivas que podemos modificar''. |
| − | Un ejemplo de esto es la configuración de xdebug que | + | * Un ejemplo de esto es la configuración de xdebug que se ajusta en el archivo php.ini. |
</div> | </div> | ||
| − | |||
<div class="slide"> | <div class="slide"> | ||
| Línea 93: | Línea 129: | ||
http://www.php.net/manual/es/ini.list.php | http://www.php.net/manual/es/ini.list.php | ||
</div> | </div> | ||
| + | |||
<div class="slide"> | <div class="slide"> | ||
| + | <span id="versiones"></span> | ||
| + | ===Versiones de PHP [[#indice|(↑ volver al índice)]]=== | ||
| − | |||
*Vamos a ver un poco de historia y evolución | *Vamos a ver un poco de historia y evolución | ||
| Línea 144: | Línea 182: | ||
https://www.php.net/releases/8_3_0.php | https://www.php.net/releases/8_3_0.php | ||
</div> | </div> | ||
| + | |||
<div class="slide"> | <div class="slide"> | ||
| − | + | <span id="resumen_funcionalidades"></span> | |
| − | + | === Resumen de nuevas funcionalidades [[#indice|(↑ volver al índice)]]=== | |
| − | + | ||
| − | + | ||
;PHP 7.4 | ;PHP 7.4 | ||
* Arrow functions (funciones flecha): para simplificar las funciones anónimas. | * Arrow functions (funciones flecha): para simplificar las funciones anónimas. | ||
| Línea 168: | Línea 205: | ||
* Array unpacking con claves: expansión de arrays con claves asociativas. | * Array unpacking con claves: expansión de arrays con claves asociativas. | ||
</div> | </div> | ||
| + | |||
<div class="slide"> | <div class="slide"> | ||
| − | |||
;PHP 8.2 | ;PHP 8.2 | ||
* Dynamic properties deprecated: las propiedades dinámicas son ahora obsoletas. | * Dynamic properties deprecated: las propiedades dinámicas son ahora obsoletas. | ||
| Línea 175: | Línea 212: | ||
* Disjunctive normal form types: más flexibilidad en tipos de unión. | * Disjunctive normal form types: más flexibilidad en tipos de unión. | ||
</div> | </div> | ||
| + | |||
<div class="slide"> | <div class="slide"> | ||
| − | |||
;PHP 8.3 | ;PHP 8.3 | ||
* json_validate(): para validar datos JSON. | * json_validate(): para validar datos JSON. | ||
| Línea 183: | Línea 220: | ||
</div> | </div> | ||
<div class="slide"> | <div class="slide"> | ||
| − | + | <span id="php84"></span> | |
| − | + | === PHP 8.4 (Versión actual- Octubre 2025) [[#indice|(↑ volver al índice)]]=== | |
| − | + | * '''''Property hooks (`get` / `set`):''''' permiten asociar lógica directamente a la lectura y escritura de propiedades. | |
| − | === | + | * '''''Visibilidad asimétrica (`public private(set)`):''''' distinta visibilidad para lectura y escritura de propiedades. |
| − | * | + | * '''''Nueva API de números aleatorios:''''' generación de números aleatorios más segura y consistente. |
| − | + | * '''''Deprecaciones y limpieza:''''' eliminación de comportamientos heredados y mejoras de rendimiento en el núcleo. | |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
</div> | </div> | ||
| − | |||
<div class="slide"> | <div class="slide"> | ||
| − | + | <span id="como_escribir"></span> | |
| − | + | ===Cómo escribir PHP [[#indice|(↑ volver al índice)]]=== | |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | ===Cómo escribir PHP=== | + | |
*Dentro de páginas html | *Dentro de páginas html | ||
<source lang=php> | <source lang=php> | ||
| Línea 243: | Línea 261: | ||
*Vamos a probarla y ver la información que genera}} | *Vamos a probarla y ver la información que genera}} | ||
*Haz un programa que en php que ejecute la función '''''phpinfo()''''' | *Haz un programa que en php que ejecute la función '''''phpinfo()''''' | ||
| + | }} | ||
{{Plegable|hide|Primer programa| | {{Plegable|hide|Primer programa| | ||
<source lang=php> | <source lang=php> | ||
| − | |||
<html> | <html> | ||
<head> | <head> | ||
| Línea 259: | Línea 277: | ||
</source> | </source> | ||
}} | }} | ||
| − | + | ||
| + | |||
| + | |||
</div> | </div> | ||
| Línea 267: | Línea 287: | ||
}} | }} | ||
</div> | </div> | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
</div> | </div> | ||
