PHP 6: The Missing Version Number

Want to help support this blog? Try out Oh Dear, the best all-in-one monitoring tool for your entire website, co-founded by me (the guy that wrote this blogpost). Start with a 10-day trial, no strings attached.

We offer uptime monitoring, SSL checks, broken links checking, performance & cronjob monitoring, branded status pages & so much more. Try us out today!

Profile image of Mattias Geniar

Mattias Geniar, January 18, 2015

Follow me on Twitter as @mattiasgeniar

For those active in the PHP community for a while, it’s not exactly a secret. But to the outside world, it may seem odd that the PHP version numbers jump from the 5.x series straight to 7.x, without the magical number 6.

Why is there no PHP 6?

The main reason for not having a PHP 6 version is, in fact, a well-intended cover-up.

There have been attempts at making a PHP 6 release in as early as 2005, which would feature UTF8/Unicode support (at last!). But those efforts never succeeded.

As time went on, it gave the PHP 6 release a bad name. It’s the version that went in development for ever, but was never released.

In that regard, it’s similar to IPv5, the “missing” version between the now popular IPv4 and the “new” IPv6 Internet Protocol.

So, as with anything in PHP, there was a vote. Should the PHP 6 name be kept, even though it has a bad reputation/name? The answer finally came in the form of “no, we will rename the next version of PHP to PHP 7".

The main arguments were;

– First and foremost, PHP 6 already existed and it was something completely different.

– While it’s true that the other PHP 6 never reached General Availability, it was still a very widely published and well-known project conducted by php.net that will share absolutely nothing with the version that is under discussion now. Anybody who knew what PHP 6 is (and there are many) will have a strong misconception in his or her mind as to the contents and features of this new upcoming version (essentially, that it’s all about Unicode).

» PHP6’s naming debacle

Was PHP 5.3 the real PHP 6?

In fact, many believe – myself included – that the PHP 5.3 release should have been the PHP 6 release. If introduced a lot of new features and quite a few backwards incompatible changes.

The kind of breaking changes that would warrant a major version bump, really.

You can’t have 2 versions of PHP 6

Since a lot of debate was already going on about PHP 6 (it had over 5 years of “speculation”, since it started in 2005 and was abandoned in 2010), the PHP 6 name was referenced in quite a lot of places already.

This previous attempt at a new major version was also developed under the name of PHP 6 and as such there are various resources referring to it, including a number of books. There is concern that there might be confusion between the abandoned previous attempt and the work that is currently happening.

» PHP 6’s naming debacle

PHP 6 failed and never came to be.

PHP 7 however has a clear timeline and is looking really good.



Want to subscribe to the cron.weekly newsletter?

I write a weekly-ish newsletter on Linux, open source & webdevelopment called cron.weekly.

It features the latest news, guides & tutorials and new open source projects. You can sign up via email below.

No spam. Just some good, practical Linux & open source content.