PHP

All PHP 7.x versions are now EOL

PHP 7.4, the last version of PHP 7.x series, reached its End-of-Life date today. This essentially means that there will be no bug or security fixes made to any of the PHP 7 versions.

PHP 7.0.0, the first of the PHP 7.x series was released back in 2015 December, with several major improvements to the language. PHP 7.0 is the version that brought scalar types (stringintfloat, etc) to PHP, along with return types support. It also added support for Abstract Syntax Tree (AST), and removed a lot of deprecated and outdated functionality (such as the mysql extension).

Some of the major feature milestones in PHP 7.x series include:

  • PHP 7.1 in 2016 with Nullable types and void return type
  • PHP 7.2 in 2017 with object type and Sodium extension in core
  • PHP 7.3 in 2018 with improved Heredoc and Nowdoc support
  • PHP 7.4 in 2019 with typed properties and LSP improvements

Typically, each major PHP version (7.3, 7.4, 8.0, etc) receive two years of active support, followed by one year of security support. PHP 7.4 enjoyed active support from 2019 to the end of 2021. PHP 7.4’s one year of security support ends today.

All PHP applications that run on any PHP 5 or 7 versions are strongly recommended to upgrade the PHP 8. There are several significant changes between PHP 7.4 and PHP 8.0, but a comprehensive and in-depth list of changes in PHP 8.0 are available on PHP.Watch.

It might make more sense to upgrade to PHP 8.1, or upcoming PHP 8.2 (scheduled for 8th of December) because 8.1 and 8.2 are more recent, and have a relatively small number of major syntax and feature changes. Further, PHP 8.0 no longer receives active support since 26th of this month.

PHP 7.4 Usage Share Remains High

Despite reaching EOL today, PHP 7.4 is still the PHP version with highest usage share, as evident from publicly available usage statistics.

Packagist.org and WordPress.org publish the PHP version statistics reported by Composer and WordPress installations. Both of them show that PHP 7.x versions still enjoy an overwhelming majority of usage share. PHP 7.4 in particular is used by more than 50% of all Composer projects and WordPress installations.


PHP usage share pie chart with data from Packagist.org
PHP 7.x versions are still the most used PHP versions as reported by Composer to Packagist.org.

PHP usage share pie chart with data from WordPress.org
WordPress.org also reports that PHP 7.x versions still hold the major usage share.

The fact that PHP 7 is still the major PHP version by usage share is an alarming statistic because unless these applications receive Long-term support, they are practically vulnerable applications in the event a vulnerability is discovered that affects these EOL versions.

PHP 7.4 Long-Term Support

Although it is highly recommended to upgrade to PHP 8 for its new features, performance improvements, and security improvements, the truth is that there are PHP applications that the upgrade cannot be justified or even feasible.

Ubuntu 20.04 is a Long-term supported operating system that provides PHP 7.4 in its default repositories. The current LTS version, Ubuntu 22.04 has PHP 8.0. For Debian/Ubuntu and other Linux operating systems derived from them, using Ubuntu 20.04 is an easy and costless way to obtain long-term support for PHP 7.4. Ubuntu 20.04 receives hardware support and maintenance support until 2025, and extended security maintenance as part of its ESM offering.

Red Hat family of operating systems also offer PHP 7.4 in default repositories.

Note that not all PHP security fixes get back-ported to LTS operating system repositories.

Avatar

Shakeel Shahid

About Author

Leave a comment

Your email address will not be published. Required fields are marked *

You may also like

PHP

PHP 8.2.0 Release Rescheduled to December 8

The upcoming major PHP version, PHP 8.2.0, was scheduled to be released as on November 24 this year. Sergey Panteleev, one
PHP

PHP 8.2 Released

What’s New and Changed in PHP 8.2 Highlights of PHP 8.2 include support for readonly classes, DNF types, true, null, and false types as stand-alone types, declaring