PHP es un lenguaje de secuencias de comandos interpretado, dinámico, orientado a objetos y ampliamente utilizado, diseñado principalmente para el desarrollo web del lado del servidor. Se utiliza para preguntas sobre el lenguaje PHP.

PHPes un lenguaje de secuencias de comandos ampliamente utilizado, dinámico, orientado a objetos e interpretado, diseñado principalmente para el desarrollo web del lado del servidor.

El proyecto PHP original, tal como lo inventó Rasmus Lerdorf, significaba Página de inicio personal. Hoy, significa el acrónimo recursivo PHP: preprocesador de hipertexto.

La última versión estable, los cambios de desarrollo y las ramas de desarrollo se pueden encontrar en el sitio web de PHP, y el código fuente, escrito en C, está disponible en repositorio de GitHubde PHP.

Para comenzar con PHP, puede usar una de estas aplicaciones que incluyen, entre otros componentes, un servidor web y PHP:

Hay opciones como Cygwin (Linux en Windows) en las que puede instalar PHP como cualquier otro Linux

PHP proporciona un servidor web incorporado que se puede iniciar con el siguiente comando:

 php -S localhost:8000

Después de ejecutar el comando anterior, el servidor escuchará en el puerto 8000 utilizando el directorio de trabajo actual como raíz del documento. Consulte el manual de PHPpara obtener más información.

Aviso: para hacer una demostración en línea de su pregunta, puede usar codepad, 3v4lo PHP Sandboxque actúa como jsfiddle, pero para PHP. Sin embargo, todo el código relevante debe incluirse en su pregunta o respuesta.

Versiones PHP

Versión estable actual (8.0.x): 8.0.0 // Fecha de lanzamiento: 26 de noviembre de 2020

Versión estable actual (7.4.x): 7.4.14 // Fecha de lanzamiento: 07 de enero de 2021

Antigua versión estable (7.3.x): 7.3.26 // Fecha de lanzamiento: 07 de enero de 2021

Se recomienda utilizar la versión de lanzamiento estable actual. Todas las versiones inferiores a 7.3 son oficialmente no admitidas y se ha anunciado el final de su vida útil. Puede encontrar una lista de las ramas admitidas y su estado de mantenimiento aquí.

Para obtener más información sobre las nuevas funciones y los cambios necesarios en una nueva versión, consulte los documentos oficiales de migración:

Script PHP de muestra

Este script muestra Hello World! en su pantalla.

<?php
   echo 'Hello World!';
?>

Para ejecutar este script en una consola, guárdelo en el directorio de trabajo actual en un archivo llamado hello.php y simplemente ejecute el comando: php hello.php.

En caso de que no tenga PHP instalado en su máquina, puede probar este script simple con Docker, simplemente ejecute:

docker run -it --rm --name php-test php:7.1-cli php -r 'echo "Hello World!";'

Comunidad

PHP tiene muchos foros comunitarios activos, que incluyen:

Más información

Documentación en línea

El manual de PHPes la documentación oficial de la sintaxis del idioma con funciones de búsqueda y accesos directos de URL (por ejemplo, https://php.net/explode). La API está bien documentadapara extensiones agrupadas y adicionales. La mayoría de las extensiones adicionales se pueden encontrar en PECL. El PEARcontiene una gran cantidad de clases proporcionadas por la comunidad. También es posible descargar una versión fuera de línea de la documentación aquí.

Además, el PHP Framework Interop Group (PHP-FIG) ha creado conjuntos de estándares con respecto a los estilos y estándares de codificación PHP. Estas Recomendaciones estándar de PHP (PSR) se pueden encontrar aquí.

Tutoriales PHP

Información relacionada con la seguridad de PHP

Libros de programación PHP gratuitos

Soporte de base de datos

PHP admite una amplia gama de bases de datos, relacionales y no relacionales por igual.

PHP a menudo se combina con la base de datos relacional MySQL. PHP también incluye un excelente soporte de base de datos para PostgreSQL, SQLite, Microsoft SQL Server(Referencia de API), Oracle, IBM DB2 & Cloudscape, Apache Derbye incluso ODBC < / a>.

Todas las versiones modernas de PHP incluyen PDO: un incorporado biblioteca de abstracción de acceso a datoscon opciones integrales de conectividad. Más recientemente, han aparecido extensiones PECL que ofrecen soporte de base de datos "NoSQL", incluyendo Apache Thrift(para Apache Cassandra), MongoDB , Redis, y otros.

Código y herramientas útiles de terceros

Además de la vasta funcionalidad proporcionada en PHP Core y a través de PEAR y PECL, hay una serie de contribuciones notables de terceros al mundo PHP, algunas de las cuales se enumeran a continuación:

Gestión de paquetes con compositora

Composeres una herramienta de gestión de paquetes para PHP inspirada en npm para Node.js y Bundler para Ruby. Permite que las dependencias por proyecto se especifiquen en un archivo JSON.

Composer utiliza paquetes de Packagistque está creciendo rápidamente para contener muchas de las bibliotecas PHP más populares.

Composer resuelve los siguientes problemas:

  1. Tiene un proyecto que depende de varias bibliotecas.
  2. Algunas de esas bibliotecas dependen de otras bibliotecas.
  3. Declaras las cosas de las que dependes.
  4. Composer determina qué versiones de qué paquetes deben instalarse y las descarga en un directorio (generalmente vendor) en su proyecto.

Nada viene gratis. El software descargado con Composer puede tener errores, como cualquier otro, incluidas las vulnerabilidades de seguridad. Es su responsabilidad estar al tanto de lo que instala y actualizar cuando sea necesario para obtener soluciones de seguridad.

Herramientas de aseguramiento de calidad

Codificación de normas y convenciones

Hay una serie de estándares de codificación propuestos y aceptados por el PHP Framework Interop Group (PHP-FIG). Estos se conocen como las Recomendaciones de estándares PHP (PSR). A partir del 2 de julio de 2017, están en vigencia las siguientes recomendaciones:

Puede encontrar una lista completa de todas las recomendaciones junto con su estado en la página de recomendaciones PHP-FIG


Referencia

Logo oficial: