rfc:php8
This is an old revision of the document!
Proposals for PHP 8
Introduction
This page is a spot to list and discuss ideas for PHP 8. This is not a place to discuss features which may be accepted in the 7.X series; it is for features which require backwards compatibility breaks to achieve.
Ideas and Proposals
- Unify behavior of userland and internal functions.
- In particular when internal functions fail to parse argument types correctly they fail by returning null. Userland functions throw a TypeError.
- Merge symbol tables:
- Add parameter contravariance and return type covariance. This will probably change when autoloads are triggered. Additionally we probably want to reserve new types related to variance such as
mixed
. New types in the global namespace are technically reserved already but in practice it would have a small BC impact. - Extend
instanceof
to work with non-classes and add new functions for checking type and subtype relationships e.g.($int instanceof int)
is_type_of(1, 'int')
is_subtype_of('array', 'iterable')
.
rfc/php8.1518041906.txt.gz · Last modified: 2018/02/07 22:18 by levim