A brief history of PHP language & what we can learn from it?

This year PHP gets into its thirties 🎉 And on this occasion I would like to briefly summarise the history of PHP web development, to better understand the present and the future of the PHP programming language. I am pretty sure there is a lot we can learn from this story.

So let's begin...

It was in June 1995, thirty years ago... or wait, let's start even a bit earlier...

How did it all start?

It is November 1968 in frosty Greenland, when the future programmer Rasmus Lerdorf is born. The World Wide Web is still 21 years from being invented. And Greenland is still part of the Kingdom of Denmark, and no one is trying to buy it 😉

Would his parents know that Rasmus will become a programmer? Probably not, as the C programming language will be unknown for another few years.

Fast forward to 1994. Rasmus Lerdorf is working on his online resume. Yes, online, because the World Wide Web was invented in 1989 and became open to the public in 1993. He is probably one of the first to have a digital CV 💪

Rasmus wanted to track how many people had visited his resume. How would you do it back then? It was way before Google Analytics was launched. Heck, Google itself would be unknown for another four years! So what did he do? He coded himself a simple set of Common Gateway Interface (CGI) binaries first in Pearl and later in the C programming language, which eventually led to PHP being born. Here is his story.

"PHP began life as a simple little cgi wrapper written in Perl. I wrote it in an afternoon during a period between contracts when I needed a quick tool to get an idea of who was reading my online resume. It was never intended to go beyond my own private use. The web server where I had my resume was extremely overloaded and had constant problems forking processes. I rewrote the Perl wrapper in C to get rid of the considerable overhead of having to fork Perl each time my resume was accessed."

~Rasmus Lerdorf (source: https://www.php.net/manual/phpfi2.php)

From PHP Tools to PHP Foundation

Later more people using the same Web Server contacted Rasmus if they could use his wrapper. And as usual, if you give something to people, they keep asking for more. So Rasmus added more and more features to his toolset leading eventually to a semi-complete distribution along with documentation, a mailing list and a FAQ. How did he name it? A "Personal Home Page Tools", or in short, a PHP Toolset.

PHP/FI (aka PHP 1)

Back then, Rasmus also began experimenting with databases and developed a tool for seamlessly integrating SQL queries into web pages. This solution, essentially a CGI wrapper, parsed SQL queries and simplified the creation of forms and tables based on those queries. He named this tool a Form Interpreter or FI for short. And that's how a PHP/FI was born. By many called a PHP v1.

PHP 2

In 1997 the PHP acronym was formally changed to PHP: HyperText Preprocessor. In the second version of PHP/FI 2.0, Rasmus has completely rewritten the PHP and FI packages and combined them into a single program. It also evolved to the point, where it was a simple scripting language embedded inside HTML files. That's probably the moment where the term "dynamic web pages" was born, as PHP enriched static HTML sites with server-side generated content. And in this very way, it was to be known for many years to come, until web development got into templating and finally APIs and SPA applications.

PHP 3

In 1997, two Israeli students from Tel Aviv - Andi Gutmans and Zeev Suraski — reached Rasmus online regarding his implementation of PHP. They wanted to use it for their university project, but it was simply inefficient and lacking some features. So they started discussions around various aspects of the current implementation and their redevelopment of PHP. And that's how PHP version 3 was born. It introduced included object-oriented programming and was the first version that more or less resembles PHP as it exists today. Two years later Zeev and Andi would combine their first names to register their new company - Zend Technologies. You might have heard of it 😉

PHP 4

May 2000 brought us PHP version 4. It was the one which, among other features, introduced HTTP sessions and output buffering. Andi Gutmans and Zeev Suraski started working on it just after the official release of v3. Their goal was to improve PHP and its performance for larger and more complex applications. The result of their work was a release of Zend Engine 1.0 which became the core of PHP 4.

Thanks to OOP introduced in version 3 and new features from version 4, PHP became something more than just a simple scripting language for dynamic web pages. It evolved from a hypertext preprocessor to a fully fledged programming language for building more and more popular dynamic web applications and API's. It was around this time when the first ever RESTful API started to appear.

PHP 4 was also the first one that powered... WordPress 1.0! The very first public version of this popular CMS was released in May 2003 when most of the servers were running on PHP 4.1. This was probably one of the crucial moments in the history of PHP. It was also the spark that led to a famous statistic saying that PHP powered over 80% of the whole internet. A year later, a young Harvard student Mark Zuckenber (ever heard of him? 😉) will code thefacebook.com using PHP 4.

Old Facebook and Wordpress logos

First logos of Facebook (named TheFaceBook back then) and WordPress from 2003/2004.

PHP 5

Quick jump to July 2004 and release of PHP v5. By this point in time PHP's development community comprises dozens of developers, along with numerous others contributing to PHP-related projects such as PEAR, PECL, and documentation. It is a huge success for PHP and it is believed that this programming language is currently installed on even hundreds of millions of domains worldwide.

PHP 5 represented a fundamental redesign of the language, featuring the new Zend Engine that improved performance while expanding object-oriented programming features with better syntax and functionality. It also added innovations like exception handling and enhanced error reporting. These advancements helped cement PHP's status as a powerful and widely used language for web development.

Symfony Logo

The first version of Symfony released in 2005 extended PHP code with many useful components.

The year 2004 and the release of PHP 5 was also a turning point for a passionate Perl developer Fabien Potencier. That's exactly when he decided to switch his focus to PHP and created the Symfony framework project (released a year later) to help his company leverage the power of PHP for complex web applications.

And what may surprise you, as of April 2025, still more than 10% of PHP pages use version 5!

PHP 6

Legendary 🦄 sixth version of PHP. How to summarise it? I think this comic does it pretty well: PHP 6 meme

No PHPun Intended comic about PHP 6.

And now being more serious - why PHP 6 was never released? The plan was to introduce deep native support for Unicode in PHP. Unfortunately, the number of technical difficulties around this implementation (including performance issues and backward compatibility) led to abandoning the PHP 6 project in 2010 and its Unicode features. Many of the non-Unicode features that had been developed for PHP 6 were incorporated into PHP 5.3 and 5.4 instead. For the next PHP version web developers had to wait for over a decade. But in the meantime two important things happen to PHP. First of all, in 2009 we founded Accesto 😉 And a year later, Taylor Otwell released the very first version of Laravel. For some reason I see the first one as a more important fact - but I guess you may disagree 😉

PHP 7

This version feels like yesterday, but is already 10 years old! Released in 2015, delivered substantial performance enhancements (up to twice as fast as PHP 5.6 🚀) and reduced memory consumption. With its subsequent versions 7.1-7.4 added a lot of language features like the ?? operator, anonymous classes and return type declaration, just to name some.

PHP8

PHP 8.0 was released in 2020 with many new features (eg. named arguments, union types, attributes, null safe operator) and significant performance improvements (huge difference thanks to the JIT compiler). Further minor releases brought us enumerations, fibers, readonly classes, DNF Types, and typed class constants. And many more! An impressive list for just a minor release I must say.

PHP 8.4

The last PHP version (8.4) introduced property hooks, asymmetric visibility and array functions.

PHP.... The Foundation

November 2021 sets another important milestone in PHP history. Nikita Popov, one of the significant contributors to PHP is leaving the project. Is it the end of PHP? On the contrary! This event became a catalyst for a series of events which in the end led to the PHP Foundation being established. With its mission to ensure the long-term prosperity of the PHP language. From now on, PHP as a programming language has a solid team of core developers, contributors and supporters.

PHP Foundation Logo

The goal of The PHP Foundation is to ensure the long-term prosperity of the PHP language.

What we can learn from PHP history for today?

The history of PHP shows that this was never a hype-driven language. Throughout its history, PHP wasn't the first one to introduce various features. It adopted object-oriented programming pretty late and for many years was pretty far from types. But at the same time, it never stopped evolving! PHP may not be up to date with what's latest or sexy and may not have all the sugar yet. But it is getting the modern syntax eventually. May not be the first one, but thanks to that, it does implement only those solutions, that proved to be useful in other languages and other technologies. And eventually, modern PHP code does not differ much from any other contemporary language used by web developers.

Getting mature, not old!

For the last 30 years, PHP has constantly developed and improved as a language. It wasn't getting old through these years! On the contrary, it was constantly evolving and adapting to modern web development.

How much more you can improve after 30 years of constant development? PHP shows that quite a lot. The last version 8.4 introduced property hooks, asymmetric visibility and array functions. But one thing is language features, another is better security and performance improvements.

And speaking of performance. Last month we upgraded PHP for one of our clients from 8.1 to the latest 8.4. Results? Approximately 15-20% performance boost:

Web transaction time improvement in PHP 8.4

Web transaction time was shortened by 15-20% after upgrading PHP to the latest 8.4 version.

We have already seen some good performance boosts in this project with previous upgrades within version 7 and version 8. So I wasn't really expecting any significant further improvements this time. But PHP continues to surprise me. After 30 years we can still expect some nice gains. Good job to all the core PHP developers! 💪

PHP was built out of necessity

Personally, I also like the fact that PHP was created by Rasmus Lerdorf to solve his real-life problem. And for years it continued to evolve in that very manner — driven by real needs, not by hype. Also the same was with the PHP Foundation. It wasn't established to gain power over PHP development or because having a foundation is cool. It was built out of a real need to support PHP and its growth.

Recently our CTO did a small interview with Roman Pronskiy, an Executive director of the PHP Foundation. Roman revealed couple of initiatives that will shape the future of PHP in the upcoming months and years. And of them are driven by real needs, not by hype. Examples? Introduction of generic types in PHP, and extensive security audits for PHP language, supported by German government-backed agency!

Happy birthday, PHP!

Some may think that a programming language that is 30 years old is a finished history. That after so many years we should not expect any new language features. But that's definitely not the case with the PHP! It may not be the first one that introduces various features, but you don't have to be first to be solid, reliable, and thanks to that... relevant. Personally, I like PHP because after 30 years it can still get better and better.

icon

Hire PHP modernization experts

We work fast and effective, in parallel with releasing new features. Free code review included.

Improve Code

Related posts

  • Project Release Checklist

    Project Release Checklist

    At Accesto we recently came up with a project release checklist that helps us to make sure that we did not miss anything. It helped us a lot…

    Read more
  • Page Object Pattern

    Page Object Pattern

    As important and critical unit tests are to our applications, functional testing of the front part should be a must part of any project too…

    Read more