Diferencia entre revisiones de «PHP»

De Wiki Proyectos Beta
Ir a la navegación Ir a la búsqueda
([feat] Add PHP information)
 
(feat: PHP - instalar PHP)
 
(No se muestran 53 ediciones intermedias de 2 usuarios)
Línea 1: Línea 1:
= Introducción =
== Recursos ==


PHP (acrónimo de PHP: Hypertext Preprocessor) es un lenguaje de programación de código abierto (open source) interpretado de alto nivel, muy utilizado en la creación de aplicaciones web.
* Sitio oficial de PHP [https://www.php.net/ EN]
* Documentación oficial de PHP [https://www.php.net/docs.php EN]
* PHP 7 ChangeLog: [https://www.php.net/ChangeLog-7.php EN]
* PHP 8 ChangeLog: [https://www.php.net/ChangeLog-8.php EN]
* PHP: The Right Way: [https://phptherightway.com/ EN]
* RFC PHP [https://wiki.php.net/rfc EN]
* PHP Standards Recommendations [https://www.php-fig.org/psr/ EN]
* Roadmap BackEnd PHP: [https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2ma4v7424vdtxfb9b8wr.jpg EN]
* Código fuente [https://github.com/php/php-src EN]


= Evolución =
=== News and blogs ===


Rasmus Lerdof a finales de 1994 deseaba tener un control de quiénes visitaban su currículo en su sitio web guardando estos valores en una base de datos MySQL. Modifico el lenguaje Perl y creó una primera versión del lenguaje PHP. En un aproximado de 3 años se convirtió en PHP/FI 2.0.
* Stitcher: [https://stitcher.io/ EN]
* PhpStorm: [https://blog.jetbrains.com/phpstorm/category/news/ EN]
* PHP watch: [https://php.watch/ EN]


La siguiente gran contribución al lenguaje se realizó a mediados de 1997 cuando se volvió a programar el analizador sintáctico, se incluyeron nuevas funcionalidades como el soporte a nuevos protocolos de internet y el soporte a la gran mayoría de las bases de datos comerciales.
=== Canales YouTube ===


Todas estas mejoras sentaron las bases de PHP versión 3 que utiliza el motor Zend, cubriendo las necesidades actuales y solucionar algunos inconvenientes de la versión anterior.
* Amir Kamizi: [https://www.youtube.com/channel/UCdIrfxV5xbiDrJjME9QQkHw EN]
* PHP Annotated: [https://www.youtube.com/@phpannotated EN]
* Brent On PHP: [https://www.youtube.com/user/BrenDtRoose EN]
* Derick Rethans: [https://www.youtube.com/c/DerickRethansXdebug EN]
* JustSteveKing: [https://www.youtube.com/c/JustSteveKing EN]
* PHP London: [https://www.youtube.com/c/PHPLondon EN]
* PHP South Wales: [https://www.youtube.com/channel/UCzQRSSaIV2Ajvl81BxPQDZA EN]
* Program With Gio: [https://www.youtube.com/c/ProgramWithGio EN]
* Vitalij Mik: [https://www.youtube.com/c/VitalijMik DE]


Algunas mejoras de esta nueva versión son su rapidez gracias a que primero se compila y luego se ejecuta, mientras que antes se ejecutaba mientras se interpretaba el código. Su mayor independencia del servidor web creando versiones de PHP nativas para más plataformas y un API más elaborado y con más funciones.
=== Tutoriales ===


El 13 de Julio de 2004, por fin, contando el lenguaje con una base de usuarios de 15 millones de dominios, se lanza PHP 5, basado en el Zend Engine 2.0, versión que haría que PHP entrara en su madurez, y lo convertiría en un lenguaje muy agradable de utilizar. El esfuerzo principal a la hora de desarrollar esta versión se centró en una muy necesaria mejora en el soporte de la orientación a objetos, muy pobre y discutida hasta ese momento, aunque también se añadieron otras características igual de importantes, como la capa de abstracción de acceso a bases de datos PDO (PHP Data Objects u Objetos de Datos PHP), SQLite por defecto, manejo de excepciones con bloques try-catch, iteradores, mejoras en el manejo de XML gracias a la extensión SimpleXML, mejoras en la velocidad y el rendimiento, y muchas cosas más.
* Laravel Bootcamp: [https://bootcamp.laravel.com/ EN]


Pero el futuro de PHP se presenta más brillante que nunca, no obstante, con millones de usuarios en todo el mundo y siendo utilizado en un 75% de los servidores.
=== Cheatsheet ===


* PHP Changes Cheatsheet: [https://eusonlito.github.io/php-changes-cheatsheet/EN]


= ¿Qué es PHP? =  
=== Extras ===
PHP es un lenguaje de programación (acrónimo de PHP: Hypertext Preprocessor) de código abierto (Open Source) interpretado de alto nivel, adecuado para la creación y desarrollo de aplicaciones web, que puede ser incrustado en documentos en formato HTML. Parte de su sintaxis deriva de C, Java y Perl variando con características propias,  el objetivo es permitir a los desarrolladores construir páginas web de forma rápida.


Con PHP se pueden crear una variedad de script, como el procesamiento de información en formularios, foros de discusión, páginas dinámicas, etc. Los sitios web utilizan muchas aplicaciones dinámicas para mejorar la satisfacción del usuario, por ejemplo sitios comerciales, e-commerce, blogs, redes sociales, etc.
* Imagen oficial docker: [https://hub.docker.com/_/php EN]


PHP permite la interacción y soporte con bases de datos, MySQL/MariaDB, PosgreSQL, SQL Server, Oracle, entre otras. PHP se integra con bibliotecas externas, lo que ayuda al desarrollador en la incorporación de código XML, documentos en PDF, entre otros.
=== Packages ===


Por ejemplo un script php puede estar estructurado de la siguiente forma.
* Packagist (The PHP Package Repository): [https://packagist.org/ EN]


== General ==


= Scripts =
* [[Introducción]]
Se llama script a un conjunto de instrucciones escritas en un lenguaje determinado que se insertan dentro de una página WEB, de modo que su intérprete pueda acceder a ellas en el momento en el que se requiera su ejecución.
* [[PHP básico]]
* [[POO en PHP]]
* [[PHP avanzado]]
* [[Patrones de diseño en PHP]]
* [[Microservicios en PHP]]
* [[Herramientas en PHP]]
* [[App Server en PHP]]
* [[Instalar PHP]]


El código PHP puede contener código  HTML (en este caso, mostrar el mensaje "Hola, ¡Este es un script PHP!";) en la imagen 1.1
=== Versiones ===


El código PHP está entre medio de etiquetas de comienzo y final especiales <?php y ?> las cuales permiten inicializar y finalizar los script “entrar y salir” del "Modo PHP". Lo que distingue a PHP de lado-cliente como Javascript, es que el código se ejecuta en el servidor, generando HTML y enviándolo al cliente (navegador).
* [[PHP 8.4]]
* [[PHP 8.3]]
* [[PHP 8.2]]
* [[PHP 8.1]]
* [[PHP 8.0]]
* [[PHP 7.4]]
* [[PHP 7.3]]
* [[PHP 7.2]]
* [[PHP 7.1]]
* [[PHP 7.0]]


=== Librerías ===


= ¿Qué se puede desarrollar con PHP? =
* FPDF: Se recomienda utilizar la librería FPDF para la generación de documentos PDF directamente desde PHP.
PHP puede crear scripts, procesar la información de formularios, generar páginas con contenidos dinámicos, enviar y recibir cookies utilizados en un servidor web.


Ejemplos:
=== Frameworks ===
* Parte de la red social Facebook está desarrollada con código PHP
* Wikipedia
* PHPBB (Sistema de foros de código libre).
* Programas de compras por internet.


Los scripts de PHP se usan en 3 principales campos.
* [[Codeigniter]]
* Scripts del lado-servidor. Este es el campo más tradicional y el principal foco de trabajo. Se necesitan tres aplicaciones para que funcione:
* [[Laravel]]
        ◦ El intérprete PHP (CGI módulo)
* [[Symfony]]
        ◦ Un servidor web
        ◦ Un navegador
          Es necesario hacer funcionar el servidor, con PHP instalado. El resultado del programa PHP se puede obtener a través del navegador, conectándose con el servidor web.
* Scripts en la línea de comandos. Puede crear un script PHP y correrlo sin necesidad de un servidor web o navegador. Solamente necesita el intérprete PHP para usarlo de esta manera. Este tipo de uso es ideal para scripts ejecutados regularmente desde cron (en *UNIX o Linux) o el planificador de tareas (en Windows). Estos scripts también pueden ser usados para tareas simples de procesamiento de texto.
* Aplicaciones de interfaz gráfica. Para el desarrollo de aplicaciones gráficas, el conocer de forma adecuada  características avanzadas en programas clientes, se podrá utilizar PHP-GTK. Se pueden desarrollar aplicaciones independientes de una plataforma. PHP-GTK es una extensión de PHP, la cual no está en la distribución principal.


Sistemas Operativos donde PHP puede ser utilizado.
==== Micro Frameworks ====
* Linux y sus diferentes variantes
* Unix (HP-UX, Solaris y OpenBSD)
* Microsoft Windows, Mac OS X, RISC OS entre otros


El lenguaje PHP soporta la mayoría de servidores web existentes, dentro de los cuales se pueden mencionar:
* [[Slim]]
* Apache
* Nginx
* Microsoft Internet Information Server (IIS).


Obs:
=== Nativo ===
* PHP cuenta con módulos para la mayoría de los servidores.
* PHP 5 soluciona los problemas e inconsistencias de la programación orientada a objetos de PHP 4 y se agrega un soporte completo para objetos.


 
* [[NativePHP]]
= Instalacion =
 
== Microsoft Windows ==
 
=== XAMPP ===
 
Para utilizar el lenguaje de programación PHP, se debe de tener instalado un servidor web con las configuraciones necesarias, en este caso el servidor web Apache y el intérprete para lenguaje PHP, por medio de XAMPP. (solo es recomendable para uso de desarrollo).
 
XAMPP: Desarrollado por Apache Friends, es un servidor independiente de plataforma, que consiste principalmente en la base de datos MySQL, el servidor web Apache y los intérpretes para lenguajes de script: PHP y Perl.
 
El programa está liberado bajo la licencia GNU y actúa como un servidor web libre, fácil de usar y capaz de interpretar páginas dinámicas. Actualmente XAMPP está disponible para Microsoft Windows, GNU/Linux, Solaris, y MacOS X.
 
Descargar el Paquete desde: https://www.apachefriends.org/es/index.html y seleccionar el paquete XAMPP correspondiente al sistema operativo Microsoft Windows.
 
Una vez instalado XAMPP, podemos hacer pruebas.
 
OBS:
* Los servicios de Apache y MySQL inicaran y se podrá observar en el mensaje Running. Si se desea detener el o los servicios, dar clic en el botón Stop
* Los servicios de Apache se configuran en el puerto 80 y 443, si por algún motivo se está utilizando esos puertos, deberá de ser cambiados por otros que estén disponibles, por ejemplo 8080 y 4430, para realizar el cambio se hace lo siguiente.
* Para verificar si está instalado en el servidor web  Apache, ingresar al navegador web y digitar la url http://localhost  o http://localhost:8080, en el caso si se cambiaron los puertos.

Revisión actual - 07:34 10 nov 2024

Recursos

  • Sitio oficial de PHP EN
  • Documentación oficial de PHP EN
  • PHP 7 ChangeLog: EN
  • PHP 8 ChangeLog: EN
  • PHP: The Right Way: EN
  • RFC PHP EN
  • PHP Standards Recommendations EN
  • Roadmap BackEnd PHP: EN
  • Código fuente EN

News and blogs

  • Stitcher: EN
  • PhpStorm: EN
  • PHP watch: EN

Canales YouTube

  • Amir Kamizi: EN
  • PHP Annotated: EN
  • Brent On PHP: EN
  • Derick Rethans: EN
  • JustSteveKing: EN
  • PHP London: EN
  • PHP South Wales: EN
  • Program With Gio: EN
  • Vitalij Mik: DE

Tutoriales

  • Laravel Bootcamp: EN

Cheatsheet

  • PHP Changes Cheatsheet: [1]

Extras

  • Imagen oficial docker: EN

Packages

  • Packagist (The PHP Package Repository): EN

General

Versiones

Librerías

  • FPDF: Se recomienda utilizar la librería FPDF para la generación de documentos PDF directamente desde PHP.

Frameworks

Micro Frameworks

Nativo