Skip to content
PHP News
Search

The future of PHP

RFC Tracker

Follow the proposals shaping the next version of PHP.

35
Under discussion
00
In voting
30
Accepted this year
09
Declined this year

The batch of functionality to deprecate in PHP 8.7 and remove in PHP 9.

Last activity

Speeds up asymmetric visibility by resolving read and write access separately instead of re-checking on every write.

Last activity

Lets the autoloader load an extension method's file the first time one of its methods is called, so the use extension import is all you write.

Last activity

Scopes extension methods so they are only visible where they are imported with use extension.

Last activity

Lets code add methods to existing classes and interfaces from outside their definition, Swift-style.

Last activity

Extends extension methods to built-in types like string, int and array.

Last activity

str_mask()

Draft

Adds str_mask() for masking phone numbers, card numbers and other sensitive strings.

PHP 8.7

Last activity

Adds a fallthrough; marker to switch and warns when a non-empty case falls through to the next one without it.

PHP 8.6

Last activity

Adds path segment accessors to the URI extension so paths no longer need splitting by hand.

PHP 8.6

Last activity

Adds a #[\NonExhaustive] attribute that marks an enum as likely to gain cases, so code matching on it knows to handle unknown ones.

PHP 8.6

Last activity

Adds a SORT_STRICT flag to sort(), ksort(), array_unique() and friends that orders values by type first, with no type juggling.

Last activity

Adds a #[\NotSerializable] attribute that makes the engine refuse to serialize() or unserialize() instances of a class.

PHP 8.6

Last activity