Language and policy proposals from this contributor
RFCs are part of the process by which decisions are made about PHP. For more information about the RFC
process as well as viewing a full list of RFCs please visit the RFC section.
Currently PHP has mostly invariant parameter types and mostly invariant return types. This means that if a method of a super-type has a parameter or return type...
Accept Covariant Returns and Contravariant Parameters?
PHP 4 constructors are methods that have the same name as the class they are defined in. PHP 5 preserved the ability to use PHP 4 style constructors in some cas...
Many developers would like to be able to declare the return type of a function. The basic idea of declaring a return type has been included in at least three RF...
Bug 67757 notes that the recently introduced PHP language specification differs from PHP's behavior when a switch statement defines multiple default cases. The...
Over time, authors sometimes want to add methods to an interface. Today, this causes large breakages to every implementor. This RFC proposes a way to reduce the...
For PHP 7.0 the ReflectionType API was introduced in conjunction with return types. Its minimal API was intended to be the base for future improvements; this R...
In PHP 7.0, the assert statement received some enhancements. Notably, it added the ability to throw exceptions on failures (but off by ini default) and the code...
Often programmers encounter data that is naturally represented as small finite set of exclusive values. Currently in PHP there is no convenient type-safe way to...
Sometimes multiple behaviors are necessary for a routine to be able to do its job but there is no common interface for those behaviors. Sometimes a common inter...