PHP 8.0 Reached Feature-Freeze

Published On2020-08-04

Today marks the Feature-Freeze for PHP 8.0.

all work on adding new features is suspended, shifting the effort towards fixing bugs and improving the user experience. The addition of new features may have a disruptive effect on other parts of the program, due both to the introduction of new, untested source code or resources and to interactions with other features; thus, a feature freeze helps improve the program's stability.

For PHP, this means new RFCs for new features will not be considered for PHP 8.0 anymore.

PHP 8 comes with several major improvements such as Union Types, Match expression, named parameters,
several warnings promoted to exceptions, and changes in the way concat operator, arithmetic operators, and comparison operators work. Attributes is a new feature in PHP 8.0, but it has opened several discussions lately in the mailing list to improve its functionality and syntax.

PHP 8.0 will not receive no major new features

The feature-freeze means the PHP 8.0 branch (soon to be branched in Git) will not receive any further major API changes. It's currently on Alpha 3 release, and future releases will only contain bug fixes and improvements to features that already made into PHP 8.0.

Attributes

The release-managers for PHP 8.0 has allowed an exception for the Attributes RFC. There is an on-going discussion to select a new syntax for Attributes (from @@Attr, which was <<Attr>> before).

No further planned deprecations

Each major PHP version typically comes with a list of functions and features that it deprecates. This is to streamline the standard PHP functions and get rid of functionality that do not belong to PHP core anymore, or are not supported by the maintainers.

PHP 8.0 comes with several deprecations, specially in its syntax. Due to the amount of changes involved, some of the planned deprecations are bumped to the next PHP version 8.1.

This includes the planned deprecations for:

  • strftime, date_sunrise, date_sunset functions
  • key/current/next/prev/reset function calls on objects as they are intended for array and iterable values
  • finfo_* functions in favor of the finfo class
  • get_class/get_parent_class/get_called_class without arguments

PHP 8.0 beta

PHP 8.0 beta 1 is planned for August 08.

Recent Articles on PHP.Watch

All ArticlesFeed 
How to extend lifetime of legacy PHP applications

How to extend lifetime of legacy PHP applications

As PHP continue to evolve with new breaking changes, and while that is great for most PHP applications, there are legacy applications that can't justify the human and financial cost of keeping up. Here is a guide on how to extend the lifetime of legacy PHP applications with security updates and maintenance.
PHP 8.2 Highlights: What's New and Changed

PHP 8.2 Highlights: What's New and Changed

Read about the highlights of PHP 8.2: Major new features, changes, and deprecated functionality.
How to install/upgrade PHP 8.2 on Debian and Ubuntu systems

How to install/upgrade PHP 8.2 on Debian and Ubuntu systems

A detailed and a quick-start guide on installing and upgrading PHP 8.2 on Debian and Ubuntu systems
Subscribe to PHP.Watch newsletter for monthly updates

You will receive an email on last Wednesday of every month and on major PHP releases with new articles related to PHP, upcoming changes, new features and what's changing in the language. No marketing emails, no selling of your contacts, no click-tracking, and one-click instant unsubscribe from any email you receive.