# data[].attributes.body
Fue originalmente diseñado en Perl, con base en la escritura de un grupo de CGI binarios escritos en el lenguaje C por el programador danés-canadiense Rasmus Lerdorf en el año 1994.

# data[].attributes.body
El 8 de junio de 1995 fue publicada la primera versión de PHP.
Llamada oficialmente "Personal Home Page Tools (PHP Tools)". Es la primera versión en usar el nombre "PHP".²⁹

# data[].attributes.headline
1 DE NOVIEMBRE DE 1997 Versión Dinámica.

# data[].attributes.subject
1 DE NOVIEMBRE DE 1997 Versión Dinámica.

# data[].attributes.body
Considerada por sus creadores la "herramienta más rápida y sencilla" para crear páginas web dinámicas.

# data[].attributes.body
Zeev Suraski y Andi Gutmans reescribieron la base para esta versión.²⁹​

# data[].attributes.body
Se añadió un sistema de parsing de dos fases llamado motor Zend.³⁰​

# data[].attributes.body
Se introducen 'superglobales' ($_GET, $_POST, $_SESSION, etc.)³⁰​

# data[].attributes.body
Se deshabilitan register_globals por defecto. Los datos recibidos por la red no son insertados en el espacio de nombres globales, cerrando posibles agujeros de seguridad en las aplicaciones.

# data[].attributes.body
Se introduce CLI, y CGI.³⁰​³¹​

# data[].attributes.body
Se añaden páginas man para phpize y php-config.³⁰​

# data[].attributes.body
Motor Zend II con un nuevo modelo de objetos.

# data[].attributes.body
Mejoras de rendimiento con la introducción de variables de compilador para el nuevo motor de PHP.

# data[].attributes.body
Actividad extensión de filtro por defecto. Soporte JSON nativo.

# data[].attributes.body
Soporte para espacios de nombres, enlace estático en tiempo de ejecución, etiqueta de salto (goto limitado), Clausuras nativas, Soporte nativo para archivos PHP (phar), recolección de basura para referencias circulares, soporte mejorado para Windows, sqlite3, mysqlnd como reemplazo a libmysql como biblioteca para extensiones que funcionan con MySQL, fileinfo como reemplazado de mime_magic para mejor soporte MIME, extensión de internacionalización, y etiqueta ereg obsoleta.

# data[].attributes.body
Soporte para Trait y sintaxis abreviada de array. Elementos eliminados: register_globals, safe_mode, allow_call_time_pass_reference, session_register(), session_unregister() y session_is_registered(). Servidor web incorporado.³⁴​ Varias mejoras a características existentes y al rendimiento, y requerimientos de memoria menores.

# data[].attributes.body
Nuevos generadores para bucles, empty() soporta expresiones. Se pierde el soporte para Windows XP y Windows Server 2003.

# data[].attributes.body
Constantes con expresiones escalares, listas de argumentos de longitud variable y exponencial mediante el operador **.

# data[].attributes.body
El desarrollo de PHP 6 ha sido retrasado porque los desarrolladores decidieron que el enfoque actual para tratar cadenas Unicode no es correcto, y están considerando formas alternas para la siguiente versión.³⁷​ Las mejoras planeadas para PHP 6 fueron añadidas en su lugar en PHP 5.3.0 (Soporte para espacios de nombre, enlace estático en tiempo de ejecución, funciones lambda, clausuras, goto) y 5.4.0 (traits, revinculación de clausura).Se abandonó la versión 6 de PHP siendo la siguiente versión la 7.

# data[].attributes.body
Mejoras de rendimiento, declaración de tipos de retorno en funciones

# data[].attributes.body
Tipo de retorno vacío, Clase constante modificadores de visibilidad, Tipos nullable, iterable de tipo seudo,Captura múltiples tipos de excepciones.

# data[].attributes.body
Nuevo tipo de retorno "object", integración de Libsodium como una extensión del núcleo

# data[].attributes.body
Sintaxis flexible para Nowdoc y Heredoc, soporte para referencias y deconstrucción de arrays con list(), soporte para PCRE2, función hrtime()

# data[].attributes.body
PHP 7.4.0 viene con numerosas mejoras y nuevas características como:

Propiedades escritas

Funciones de flecha

Covarianza de tipo de retorno limitado y contravarianza de tipo de argumento

Desembalaje de arreglos internos

Separador de literales numéricos

Referencias débiles

Permitir excepciones de __toString()

Precarga de Opcache

Varias deprecaciones

Extensiones eliminadas del núcleo

# data[].attributes.body
PHP 8.0 es una actualización importante del lenguaje PHP que contiene nuevos recursos y optimizaciones incluyendo argumentos nombrados, tipos de uniones, atributos, promoción de propiedades constructivas, expresiones match, operador nullsafe, JIT (traducción dinámica) y también mejoras en el sistema de tipos, manejo de errores y consistencia en general.

# data[].attributes.body
PHP 8.1 finalmente añade soporte para enums (también llamados enumeraciones o tipos enumerados). Son un tipo de datos definido por el usuario que consiste en un conjunto de valores posibles. El ejemplo de enums más común en los lenguajes de programación es el tipo booleano, con true y false como dos valores posibles.