PHP 8.0

Ready to stride into the future
with union types, attributes, JIT, and more?

PHP to have str_contains()

A function that checks if a string is contained in another string?
That should only take about 25 years.

PHP to have str_contains()

A function that checks if a string is contained in another string?
That should only take about 25 years.

2020

PHP 7.4

Typed properties, arrow functions, numeric literal separator, FFI, and OPcache preloading.

PHP 7.4

Typed properties, arrow functions, numeric literal separator, FFI, and OPcache preloading.

Nikita Popov joins PhpStorm team

A well-known and long-time contributor to the PHP ecosystem joins JetBrains to work with the PhpStorm team on improving the PHP language and ecosystem.

Nikita Popov joins PhpStorm team

A well-known and long-time contributor to the PHP ecosystem joins JetBrains to work with the PhpStorm team on improving the PHP language and ecosystem.

2019

PHP 7.3

Updates for Heredoc and Nowdoc strings, trailing comma in arguments list, new hrtime() function, and improved garbage collection.

PHP 7.3

Updates for Heredoc and Nowdoc strings, trailing comma in arguments list, new hrtime() function, and improved garbage collection.

Zeev Suraski leaves Zend

Zeev Suraski is the second of Zend’s two founders to leave the company. Matthew Weier O’Phinney and Enrico Zimuel also leave.

Zeev Suraski leaves Zend

Zeev Suraski is the second of Zend’s two founders to leave the company. Matthew Weier O’Phinney and Enrico Zimuel also leave.

PSR-15 HTTP Server Request Handlers accepted

The standard lays out how to write request handlers and middleware in PHP.

PSR-15 HTTP Server Request Handlers accepted

The standard lays out how to write request handlers and middleware in PHP.

2018

PHP 7.2

PHP becomes the first programming language with modern cryptography in its standard library thanks to the bundled libsodium. It also brings object typehint and parameter type widening.

PHP 7.2

PHP becomes the first programming language with modern cryptography in its standard library thanks to the bundled libsodium. It also brings object typehint and parameter type widening.

End of HHVM support in popular projects

End of HHVM support in popular projects

  

PSR-11 Container Interface accepted

Standardizes how frameworks and libraries make use of containers to obtain objects and parameters.

PSR-11 Container Interface accepted

Standardizes how frameworks and libraries make use of containers to obtain objects and parameters.

2017

PHP 7.0

A major language renewal comes with the new Zend Engine 3 (PHPNG), numerous improvements and new features. It’s also twice as fast as the previous PHP 5.6 release!

PHP 7.0

A major language renewal comes with the new Zend Engine 3 (PHPNG), numerous improvements and new features. It’s also twice as fast as the previous PHP 5.6 release!

Rogue Wave acquires Zend

Zend, the company that had stood behind the language since PHP 3, is bought out by Rogue Wave.

Rogue Wave acquires Zend

Zend, the company that had stood behind the language since PHP 3, is bought out by Rogue Wave.

PHP turns 20

PHP turns 20

  

PSR-7 HTTP Message Interfaces accepted

The standard finally settled on how to deal with HTTP requests and responses the OOP way.

PSR-7 HTTP Message Interfaces accepted

The standard finally settled on how to deal with HTTP requests and responses the OOP way.

CodeIgniter 3

CodeIgniter 3

 

2015

PHP 5.6

This last major PHP 5 release brings constant scalar expressions, the splat ... operator for variadic functions and argument unpacking, function and constant import with the use keyword, phpdbg as an integrated debugger, and operator overloading (yep, PHP has it!) for GMP objects.

PHP 5.6

This last major PHP 5 release brings constant scalar expressions, the splat ... operator for variadic functions and argument unpacking, function and constant import with the use keyword, phpdbg as an integrated debugger, and operator overloading (yep, PHP has it!) for GMP objects.

PHP Language Specification

Despite its popularity and considerable age, PHP never had a formal specification until 2014. The specification was initially developed at Facebook and later all copyright was transferred to the public domain worldwide.

PHP Language Specification

Despite its popularity and considerable age, PHP never had a formal specification until 2014. The specification was initially developed at Facebook and later all copyright was transferred to the public domain worldwide.

Facebook introduces Hack

The Hack programming language is born as a PHP dialect and extends PHP with a number of new features. Some of the successful solutions have since made their way into PHP and continue to inspire developers.

Facebook introduces Hack

The Hack programming language is born as a PHP dialect and extends PHP with a number of new features. Some of the successful solutions have since made their way into PHP and continue to inspire developers.

2014

PHP 5.5

Generators and coroutines, the finally keyword, and scalar class name resolution via ::class. The bundled Zend OPcache extension makes opcode caching available and opens the door to more performance optimizations.

PHP 5.5

Generators and coroutines, the finally keyword, and scalar class name resolution via ::class. The bundled Zend OPcache extension makes opcode caching available and opens the door to more performance optimizations.

Laravel 4

Illuminate, also known as Laravel 4, is re-written from the ground up as a collection of components that integrate with each other to make up a framework. And that’s when the Facades come in.

Laravel 4

Illuminate, also known as Laravel 4, is re-written from the ground up as a collection of components that integrate with each other to make up a framework. And that’s when the Facades come in.

React v0.3

The first public release of ReactPHP proves the async model can be brought into PHP applications. React.js is not yet a thing and is just called “React”.

React v0.3

The first public release of ReactPHP proves the async model can be brought into PHP applications. React.js is not yet a thing and is just called “React”.

Zend Optimizer+ open sourced

Zend Optimizer+ open sourced

 

2013

PHP The Right Way

The “Right Way” becomes the source of PHP wisdom and best practices for developers all around the world.

PHP The Right Way

The “Right Way” becomes the source of PHP wisdom and best practices for developers all around the world.
Phalcon framework released
Phalcon framework released
 

PSR-1 and PSR-2 accepted

The tabs vs spaces war is over!

PSR-1 and PSR-2 accepted

The tabs vs spaces war is over!

PHP: a fractal of bad design

The post presents an overview of many PHP problems of the day. Many of them will later be fixed, but PHP haters still refer to the article as a source of truth.

PHP: a fractal of bad design

The post presents an overview of many PHP problems of the day. Many of them will later be fixed, but PHP haters still refer to the article as a source of truth.

PHP 5.4

Traits, shortened array syntax, and built-in webserver for testing purposes come with significant performance improvements, a reduced memory footprint and over 100 fixed bugs.

PHP 5.4

Traits, shortened array syntax, and built-in webserver for testing purposes come with significant performance improvements, a reduced memory footprint and over 100 fixed bugs.

2012

Composer

By 2011, all major languages already have their own package managers: npm, Bundler, pip, NuGet. Coming in last, PHP receives a state-of-the-art package management tool thanks to Jordi Boggiano, Nils Adermann, and other contributors.
OHAI PHP DEVS, Y U NO PACKAGE?

Composer

By 2011, all major languages already have their own package managers: npm, Bundler, pip, NuGet. Coming in last, PHP receives a state-of-the-art package management tool thanks to Jordi Boggiano, Nils Adermann, and other contributors.
OHAI PHP DEVS, Y U NO PACKAGE?

Laravel 1

Taylor Otwell creates Laravel as an attempt to provide a more advanced alternative to the CodeIgniter framework. It will go on to revolutionize the entire PHP landscape.

Laravel 1

Taylor Otwell creates Laravel as an attempt to provide a more advanced alternative to the CodeIgniter framework. It will go on to revolutionize the entire PHP landscape.

2011

PSR-0 accepted

After receiving namespaces, PHP finally gets proper autoloading. Before this first PSR standard was accepted, PHP files were an insane mix of includes and requires.

PSR-0 accepted

After receiving namespaces, PHP finally gets proper autoloading. Before this first PSR standard was accepted, PHP files were an insane mix of includes and requires.

PhpStorm 1.0 Released

Previously known under its working name “Web IDE”, PhpStorm is released with support for Xdebug, PHPUnit, and Zend Framework.

PhpStorm 1.0 Released

Previously known under its working name “Web IDE”, PhpStorm is released with support for Xdebug, PHPUnit, and Zend Framework.

2010

PHP-FIG

People from various PHP projects meet at php|tek conference in 2009, and that’s when the idea of PHP-FIG (Framework Interoperability Group) group is born. The FIG’s recommendations, called PSRs, drastically changed the landscape of the PHP ecosystem.

PHP-FIG

People from various PHP projects meet at php|tek conference in 2009, and that’s when the idea of PHP-FIG (Framework Interoperability Group) group is born. The FIG’s recommendations, called PSRs, drastically changed the landscape of the PHP ecosystem.

PHP 5.3

Highly anticipated support for namespaces, late static binding, and anonymous functions finally make PHP a mature language. And what mature language doesn’t have a goto operator?

PHP 5.3

Highly anticipated support for namespaces, late static binding, and anonymous functions finally make PHP a mature language. And what mature language doesn’t have a goto operator?

2009

Xdebug 2.0

Improved stack traces, execution traces to files, code coverage analysis and much improved remote debugging support.

Xdebug 2.0

Improved stack traces, execution traces to files, code coverage analysis and much improved remote debugging support.

ElePHPant – the Furry PHP Mascot

Brought into the world by Damien Seguy based on Vincent Pontier’s design.

ElePHPant – the Furry PHP Mascot

Brought into the world by Damien Seguy based on Vincent Pontier’s design.

2007

PHP 5.2

With a new memory manager for the Zend Engine and new features such as input filtering, JSON and ZIP extensions, tracking file upload progress, and date and time objects, PHP 5.2 was a big success and remained the most popular version until 2013.

PHP 5.2

With a new memory manager for the Zend Engine and new features such as input filtering, JSON and ZIP extensions, tracking file upload progress, and date and time objects, PHP 5.2 was a big success and remained the most popular version until 2013.

Zend Framework initial release

Zend Framework was one of the first frameworks developed as a set of reusable components. It’s goal was “extreme simplicity” and “use-at-will architecture”. Released in 2005, it helped bring PHP into the enterprise market.

Zend Framework initial release

Zend Framework was one of the first frameworks developed as a set of reusable components. It’s goal was “extreme simplicity” and “use-at-will architecture”. Released in 2005, it helped bring PHP into the enterprise market.

CodeIgniter 1

CodeIgniter was one of the first rapid development frameworks. Not only is it alive and popular to this day, it also inspired developers to produce many subsequent frameworks like Laravel, FuelPHP, Kohana, and Yii.

CodeIgniter 1

CodeIgniter was one of the first rapid development frameworks. Not only is it alive and popular to this day, it also inspired developers to produce many subsequent frameworks like Laravel, FuelPHP, Kohana, and Yii.

2006

PHP 5.1

Completely rewritten date handling code with improved timezone support, PDO enabled by default, and significant performance improvements over PHP 5.0.

PHP 5.1

Completely rewritten date handling code with improved timezone support, PDO enabled by default, and significant performance improvements over PHP 5.0.

2005

PRADO version 1

The first framework using PHP 5. Prado was inspired by Apache Tapestry, Borland Delphi, and Microsoft ASP.NET.

PRADO version 1

The first framework using PHP 5. Prado was inspired by Apache Tapestry, Borland Delphi, and Microsoft ASP.NET.

PHP 5.0

Zend Engine II, with a new object model and new extensions (SimpleXML, SOAP, MySQLi, SQLite), greatly improves streams with the ability to access low-level socket operations.

PHP 5.0

Zend Engine II, with a new object model and new extensions (SimpleXML, SOAP, MySQLi, SQLite), greatly improves streams with the ability to access low-level socket operations.

2004

Dmitry Stogov Joined Zend

Dmitry joins Zend and helps develop most of the core PHP subsystems during PHP 5’s life. Later, Dmitry will go on to lead the PHPNG project, which brings the speed of PHP 7 to a new level. Dmitry currently works at Zend by Perforce as a Principal Engineer and leads the development of the JIT compiler for PHP.

Dmitry Stogov Joined Zend

Dmitry joins Zend and helps develop most of the core PHP subsystems during PHP 5’s life. Later, Dmitry will go on to lead the PHPNG project, which brings the speed of PHP 7 to a new level. Dmitry currently works at Zend by Perforce as a Principal Engineer and leads the development of the JIT compiler for PHP.

First Release of WordPress

The most popular CMS in the world first appears as a fork of b2. It used the same file structure as its predecessor, and continued the numbering from its last release, 0.6. Major releases of WordPress are codenamed after well-known jazz musicians, starting from version 1.0. Today, WordPress is used by more than one third of all websites on the internet.

First Release of WordPress

The most popular CMS in the world first appears as a fork of b2. It used the same file structure as its predecessor, and continued the numbering from its last release, 0.6. Major releases of WordPress are codenamed after well-known jazz musicians, starting from version 1.0. Today, WordPress is used by more than one third of all websites on the internet.

2003

PHP Look Back by Derick Rethans

On 11-Feb Erik was wondering if people who “keep telling me PHP is a dead end, it’s in fact a dying language..” are just making it up or not.

Yeah, well, nothing has changed. PHP’s unofficial slogan: Dying since 1995.

PHP Look Back by Derick Rethans

On 11-Feb Erik was wondering if people who “keep telling me PHP is a dead end, it’s in fact a dying language..” are just making it up or not.

Yeah, well, nothing has changed. PHP’s unofficial slogan: Dying since 1995.

2002

APC First Released

APC First Released

  

Initial commit of PHPUnit

Sebastian Bergmann starts work on the most used PHP testing framework. It was inspired by SUnit and JUnit.

Initial commit of PHPUnit

Sebastian Bergmann starts work on the most used PHP testing framework. It was inspired by SUnit and JUnit.

Smarty released

The best-known templating engine for PHP.
Rasmus realized that he had done something wrong when people started writing template engines for his template engine in his template engine.

Smarty released

The best-known templating engine for PHP.
Rasmus realized that he had done something wrong when people started writing template engines for his template engine in his template engine.

2001

First PHP conferences
First PHP conferences
  

Initial release of Drupal

Originally written as a message board, Drupal became an open source project in 2001 and grew into one of the most popular CMS systems.

Initial release of Drupal

Originally written as a message board, Drupal became an open source project in 2001 and grew into one of the most popular CMS systems.

PHP 4.0

PHP 4 comes with a brand new “Zend Engine” core developed by Andi and Zeev. In addition to greatly improved performance, PHP 4 included support for more web servers, HTTP sessions, output buffering, and several new language constructs.

PHP 4.0

PHP 4 comes with a brand new “Zend Engine” core developed by Andi and Zeev. In addition to greatly improved performance, PHP 4 included support for more web servers, HTTP sessions, output buffering, and several new language constructs.

2000

Zend company founded

The name Zend is a combination of Suraski’s and Gutmans’ forenames, Zeev and Andi. Zend has been a source of PHP innovations and development ever since its founding. It has contributed core improvements as well as userland packages and frameworks and development environment tooling.

Zend company founded

The name Zend is a combination of Suraski’s and Gutmans’ forenames, Zeev and Andi. Zend has been a source of PHP innovations and development ever since its founding. It has contributed core improvements as well as userland packages and frameworks and development environment tooling.

1999

ElePHPant Logo

Vincent Pontier creates an elePHPant logo for the PHP project, and it has been the adorable mascot of the PHP language ever since.

ElePHPant Logo

Vincent Pontier creates an elePHPant logo for the PHP project, and it has been the adorable mascot of the PHP language ever since.

phpMyAdmin project was “born”

Tobias Ratschiller releases version 0.9.0 of the phpMyAdmin web administration tool for MySQL. For a long time it remained one of the primary tools for accessing MySQL and MySQL-like databases.

phpMyAdmin project was “born”

Tobias Ratschiller releases version 0.9.0 of the phpMyAdmin web administration tool for MySQL. For a long time it remained one of the primary tools for accessing MySQL and MySQL-like databases.

PHP 3.0

PHP 3.0 was the first version that closely resembles PHP as it exists today. Zeev and Andi rewrote the interpreter and introduced a new extension API which makes it a lot easier for the community to contribute new extensions. With many new developers from around the world on board, PHP 3 was announced by the new PHP Development Team.
The language’s name changed to the recursive acronym “PHP: Hypertext Preprocessor”. At its peak, PHP 3 was installed on approximately 10% of all web servers on the Internet.

PHP 3.0

PHP 3.0 was the first version that closely resembles PHP as it exists today. Zeev and Andi rewrote the interpreter and introduced a new extension API which makes it a lot easier for the community to contribute new extensions. With many new developers from around the world on board, PHP 3 was announced by the new PHP Development Team.
The language’s name changed to the recursive acronym “PHP: Hypertext Preprocessor”. At its peak, PHP 3 was installed on approximately 10% of all web servers on the Internet.
Netcraft Survey
Netcraft Survey
  

1998

Andi Gutmans & Zeev Suraski join the project

Andi Gutmans and Zeev Suraski, students at Technion, Haifa, Israel, need a backend for an eCommerce application they are developing as a university project. They find PHP/FI 2.0 to be inefficient and lacking features. In 1997 they embark on a complete rewrite of the underlying interpreter. They approach Rasmus online to discuss various aspects of his current implementation and their redevelopment of PHP.

Andi Gutmans & Zeev Suraski join the project

Andi Gutmans and Zeev Suraski, students at Technion, Haifa, Israel, need a backend for an eCommerce application they are developing as a university project. They find PHP/FI 2.0 to be inefficient and lacking features. In 1997 they embark on a complete rewrite of the underlying interpreter. They approach Rasmus online to discuss various aspects of his current implementation and their redevelopment of PHP.

PHP 2.0

PHP/FI gets a version 2.0 release. Interestingly, however,there was only ever one single full version of PHP 2.0. When it finally graduated out of beta status in November, 1997, the underlying parsing engine was already being entirely rewritten.

PHP 2.0

PHP/FI gets a version 2.0 release. Interestingly, however,there was only ever one single full version of PHP 2.0. When it finally graduated out of beta status in November, 1997, the underlying parsing engine was already being entirely rewritten.

1997

PHP/FI

The code gets another complete makeover, and in April of 1996 Rasmus introduces PHP/FI, combining the names of previous releases. This second-generation implementation began the true evolution of PHP from a suite of tools into a programming language in its own right. It included built-in support for DBM, mSQL, and Postgres95 databases, cookies, user-defined function support, and much more.

PHP/FI

The code gets another complete makeover, and in April of 1996 Rasmus introduces PHP/FI, combining the names of previous releases. This second-generation implementation began the true evolution of PHP from a suite of tools into a programming language in its own right. It included built-in support for DBM, mSQL, and Postgres95 databases, cookies, user-defined function support, and much more.

1996

Personal Home Page Construction Kit

Rasmus releases completely rewritten code. Bringing back the PHP name, it is now (briefly) named “Personal Home Page Construction Kit” and is the first release to boast what was considered at the time to be an advanced scripting interface.
The language is deliberately designed to resemble C in structure, making it easy for developers familiar with C, Perl, and similar languages to adopt.

Personal Home Page Construction Kit

Rasmus releases completely rewritten code. Bringing back the PHP name, it is now (briefly) named “Personal Home Page Construction Kit” and is the first release to boast what was considered at the time to be an advanced scripting interface.
The language is deliberately designed to resemble C in structure, making it easy for developers familiar with C, Perl, and similar languages to adopt.

FI

Rasmus expands upon PHP. For a short time he actually drops the PHP name. Now referring to the tools as FI (short for “Forms Interpreter”), the new implementation includes some basic functionality of PHP as we know it today.

FI

Rasmus expands upon PHP. For a short time he actually drops the PHP name. Now referring to the tools as FI (short for “Forms Interpreter”), the new implementation includes some basic functionality of PHP as we know it today.

PHP Tools – the Birth of PHP

Rasmus releases PHP Tools to the public.

PHP Tools – the Birth of PHP

Rasmus releases PHP Tools to the public.

1995

Rasmus Lerdorf starts working on PHP 

The very first incarnation of PHP is a simple set of Common Gateway Interface (CGI) binaries written in the C programming language (not Perl). Originally used for tracking visits to Rasmus Lerdorf’s online resume, he named the suite of scripts “Personal Home Page Tools,” more commonly referenced as “PHP Tools”.

PHP 7.4

Typed properties, arrow functions, numeric literal separator, FFI, and OPcache preloading.

Nikita Popov joins PhpStorm team

A well-known and long-time contributor to the PHP ecosystem joins JetBrains to work with the PhpStorm team on improving the PHP language and ecosystem.
PHP 5.6.40 – the last PHP 5 release

2019

PHP 7.3

Updates for Heredoc and Nowdoc strings, trailing comma in arguments list, new hrtime() function, and improved garbage collection.

Zeev Suraski leaves Zend

Zeev Suraski is the second of Zend’s two founders to leave the company. Matthew Weier O’Phinney and Enrico Zimuel also leave.

PSR-15 HTTP Server Request Handlers accepted

The standard lays out how to write request handlers and middleware in PHP.

2018

PHP 7.2

PHP becomes the first programming language with modern cryptography in its standard library thanks to the bundled libsodium. It also brings object typehint and parameter type widening.

End of HHVM support in popular projects

 

PSR-11 Container Interface accepted

Standardizes how frameworks and libraries make use of containers to obtain objects and parameters.

2017

PHP 7.0

A major language renewal comes with the new Zend Engine 3 (PHPNG), numerous improvements and new features. It’s also twice as fast as the previous PHP 5.6 release!

Rogue Wave acquires Zend

Zend, the company that had stood behind the language since PHP 3, is bought out by Rogue Wave.

PHP turns 20

 

PSR-7 HTTP Message Interfaces accepted

The standard finally settled on how to deal with HTTP requests and responses the OOP way.

CodeIgniter 3

2015

PHP 5.6

This last major PHP 5 release brings constant scalar expressions, the splat ... operator for variadic functions and argument unpacking, function and constant import with the use keyword, phpdbg as an integrated debugger, and operator overloading (yep, PHP has it!) for GMP objects.

PHP Language Specification

Despite its popularity and considerable age, PHP never had a formal specification until 2014. The specification was initially developed at Facebook and later all copyright was transferred to the public domain worldwide.

Facebook introduces Hack

The Hack programming language is born as a PHP dialect and extends PHP with a number of new features. Some of the successful solutions have since made their way into PHP and continue to inspire developers.

2014

PHP 5.5

Generators and coroutines, the finally keyword, and scalar class name resolution via ::class. The bundled Zend OPcache extension makes opcode caching available and opens the door to more performance optimizations.

Laravel 4

Illuminate, also known as Laravel 4, is re-written from the ground up as a collection of components that integrate with each other to make up a framework. And that’s when the Facades come in.

React v0.3

The first public release of ReactPHP proves the async model can be brought into PHP applications. React.js is not yet a thing and is just called “React”.

Zend Optimizer+ open sourced

2013

PHP The Right Way

The “Right Way” becomes the source of PHP wisdom and best practices for developers all around the world.
Phalcon framework released

PSR-1 and PSR-2 accepted

The tabs vs spaces war is over!

PHP: a fractal of bad design

The post presents an overview of many PHP problems of the day. Many of them will later be fixed, but PHP haters still refer to the article as a source of truth.

PHP 5.4

Traits, shortened array syntax, and built-in webserver for testing purposes come with significant performance improvements, a reduced memory footprint and over 100 fixed bugs.

2012

Composer

By 2011, all major languages already have their own package managers: npm, Bundler, pip, NuGet. Coming in last, PHP receives a state-of-the-art package management tool thanks to Jordi Boggiano, Nils Adermann, and other contributors.
OHAI PHP DEVS, Y U NO PACKAGE?

Laravel 1

Taylor Otwell creates Laravel as an attempt to provide a more advanced alternative to the CodeIgniter framework. It will go on to revolutionize the entire PHP landscape.

2011

PSR-0 accepted

After receiving namespaces, PHP finally gets proper autoloading. Before this first PSR standard was accepted, PHP files were an insane mix of includes and requires.

PhpStorm 1.0 Released

Previously known under its working name “Web IDE”, PhpStorm is released with support for Xdebug, PHPUnit, and Zend Framework.

2010

PHP-FIG

People from various PHP projects meet at php|tek conference in 2009, and that’s when the idea of PHP-FIG (Framework Interoperability Group) group is born. The FIG’s recommendations, called PSRs, drastically changed the landscape of the PHP ecosystem.

PHP 5.3

Highly anticipated support for namespaces, late static binding, and anonymous functions finally make PHP a mature language. And what mature language doesn’t have a goto operator?

2009

Xdebug 2.0

Improved stack traces, execution traces to files, code coverage analysis and much improved remote debugging support.

ElePHPant – the Furry PHP Mascot

Brought into the world by Damien Seguy based on Vincent Pontier’s design.

2007

PHP 5.2

With a new memory manager for the Zend Engine and new features such as input filtering, JSON and ZIP extensions, tracking file upload progress, and date and time objects, PHP 5.2 was a big success and remained the most popular version until 2013.

Zend Framework initial release

Zend Framework was one of the first frameworks developed as a set of reusable components. It’s goal was “extreme simplicity” and “use-at-will architecture”. Released in 2005, it helped bring PHP into the enterprise market.

CodeIgniter 1

CodeIgniter was one of the first rapid development frameworks. Not only is it alive and popular to this day, it also inspired developers to produce many subsequent frameworks like Laravel, FuelPHP, Kohana, and Yii.

2006

PHP 5.1

Completely rewritten date handling code with improved timezone support, PDO enabled by default, and significant performance improvements over PHP 5.0.

2005

PRADO version 1

The first framework using PHP 5. Prado was inspired by Apache Tapestry, Borland Delphi, and Microsoft ASP.NET.

PHP 5.0

Zend Engine II, with a new object model and new extensions (SimpleXML, SOAP, MySQLi, SQLite), greatly improves streams with the ability to access low-level socket operations.

2004

Dmitry Stogov Joined Zend

Dmitry joins Zend and helps develop most of the core PHP subsystems during PHP 5’s life. Later, Dmitry will go on to lead the PHPNG project, which brings the speed of PHP 7 to a new level. Dmitry currently works at Zend by Perforce as a Principal Engineer and leads the development of the JIT compiler for PHP.

First Release of WordPress

The most popular CMS in the world first appears as a fork of b2. It used the same file structure as its predecessor, and continued the numbering from its last release, 0.6. Major releases of WordPress are codenamed after well-known jazz musicians, starting from version 1.0. Today, WordPress is used by more than one third of all websites on the internet.

2003

PHP Look Back by Derick Rethans

On 11-Feb Erik was wondering if people who “keep telling me PHP is a dead end, it’s in fact a dying language..” are just making it up or not.

Yeah, well, nothing has changed. PHP’s unofficial slogan: Dying since 1995.

2002

APC First Released

 

Initial commit of PHPUnit

Sebastian Bergmann starts work on the most used PHP testing framework. It was inspired by SUnit and JUnit.

Smarty released

The best-known templating engine for PHP.
Rasmus realized that he had done something wrong when people started writing template engines for his template engine in his template engine.

2001

First PHP conferences
 

PHP 4.0

PHP 4 comes with a brand new “Zend Engine” core developed by Andi and Zeev. In addition to greatly improved performance, PHP 4 included support for more web servers, HTTP sessions, output buffering, and several new language constructs.

Initial release of Drupal

Originally written as a message board, Drupal became an open source project in 2001 and grew into one of the most popular CMS systems.

2000

Zend company founded

The name Zend is a combination of Suraski’s and Gutmans’ forenames, Zeev and Andi. Zend has been a source of PHP innovations and development ever since its founding. It has contributed core improvements as well as userland packages and frameworks and development environment tooling.

1999

ElePHPant Logo

Vincent Pontier creates an elePHPant logo for the PHP project, and it has been the adorable mascot of the PHP language ever since.

phpMyAdmin project was “born”

Tobias Ratschiller releases version 0.9.0 of the phpMyAdmin web administration tool for MySQL. For a long time it remained one of the primary tools for accessing MySQL and MySQL-like databases.

PHP 3.0

PHP 3.0 was the first version that closely resembles PHP as it exists today. Zeev and Andi rewrote the interpreter and introduced a new extension API which makes it a lot easier for the community to contribute new extensions. With many new developers from around the world on board, PHP 3 was announced by the new PHP Development Team.
The language’s name changed to the recursive acronym “PHP: Hypertext Preprocessor”. At its peak, PHP 3 was installed on approximately 10% of all web servers on the Internet.
Netcraft Survey
 

1998

Andi Gutmans & Zeev Suraski join the project

Andi Gutmans and Zeev Suraski, students at Technion, Haifa, Israel, need a backend for an eCommerce application they are developing as a university project. They find PHP/FI 2.0 to be inefficient and lacking features. In 1997 they embark on a complete rewrite of the underlying interpreter. They approach Rasmus online to discuss various aspects of his current implementation and their redevelopment of PHP.

PHP 2.0

PHP/FI gets a version 2.0 release. Interestingly, however,there was only ever one single full version of PHP 2.0. When it finally graduated out of beta status in November, 1997, the underlying parsing engine was already being entirely rewritten.

1997

PHP/FI

The code gets another complete makeover, and in April of 1996 Rasmus introduces PHP/FI, combining the names of previous releases. This second-generation implementation began the true evolution of PHP from a suite of tools into a programming language in its own right. It included built-in support for DBM, mSQL, and Postgres95 databases, cookies, user-defined function support, and much more.

1996

Personal Home Page Construction Kit

Rasmus releases completely rewritten code. Bringing back the PHP name, it is now (briefly) named “Personal Home Page Construction Kit” and is the first release to boast what was considered at the time to be an advanced scripting interface.
The language is deliberately designed to resemble C in structure, making it easy for developers familiar with C, Perl, and similar languages to adopt.

FI

Rasmus expands upon PHP. For a short time he actually drops the PHP name. Now referring to the tools as FI (short for “Forms Interpreter”), the new implementation includes some basic functionality of PHP as we know it today.

PHP Tools – the Birth of PHP

Rasmus releases PHP Tools to the public.

1995

Rasmus Lerdorf starts working on PHP

The very first incarnation of PHP is a simple set of Common Gateway Interface (CGI) binaries written in the C programming language (not Perl). Originally used for tracking visits to Rasmus Lerdorf’s online resume, he named the suite of scripts “Personal Home Page Tools,” more commonly referenced as “PHP Tools”.

The Timeline data is opensource and available on GitHub. If you found a mistake, please feel free to create a pull-request.