Skip to content
Notes on PHP RFCs, and topics that occur repeatedly on PHP internals
Branch: master
Clone or download
Latest commit 0a80cec Apr 12, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information. added words to standardise core Feb 5, 2019
LICENSE Initial commit Nov 22, 2017 added place holders for more rfcs. Feb 17, 2019 added words for closures Feb 6, 2019 Finsihed method overloading document after the latest discussion. Feb 5, 2019 added place holders for more rfcs. Feb 17, 2019 Correct type annotation and add todo. Feb 17, 2019 Update Feb 18, 2019 added place holders for more rfcs. Feb 17, 2019 Added ternary associativity. Apr 4, 2019 Add link to mixed typehint RFC Mar 16, 2019


There are some notes on PHP RFCs, why some were declined, and what others might need for them to be implemented.

The purpose of these documents is to avoid information from being lost and to try to avoid conversations needing to be repeated multiple times on PHP internals.

Things still being discussed


Briefer closure syntax

Class scoping improvements

Consistent callables



Method overloading

Standardise core library

Ternary right associative

Union types




Explicit defaults

Tuple returns

Ideas that overcame their challenges

Co- and contra-variance


Please read the contributing guidelines before writing your 4,000 word novelella on why some RFC really should pass.


I reserve the right to be as opinionated as I feel like when commenting on RFCs; I'm not going to attempt to stay 100% neutral when talking about RFCs that I consider to be either dumb or bad for PHP.

You can’t perform that action at this time.