PSRs are “PHP Standards Recommendations” put forth by the PHP-FIG, the “Framework Interoperability Group”. It’s a group of representatives from the most popular PHP projects currently out there, debating and voting on common rules and regulations each member project should follow. Every such change or recommendation affects the PHP environment dramatically, because every user of these projects implicitly inherits these rules.
The group produced home runs such as the now deprecated PSR-0 autoloading standard, the always awesome PSR-1 and PSR-2 code style guides, the PSR-3 logging interface, and the new PSR-4 autoloader. But something happened in the past year or so - the immutability fad took full swing, and PSR-7 (the HTTP Message interface specification, allowing for interchangeable middleware between PSR-7 friendly frameworks) was produced despite some constructive criticism. PSR-6 was then debated further, somewhat ironed out over four grueling years, and recently passed the voting stage. PSR-6 is a caching interface recommendation - a guideline on how caching software should look. However, according to the opinion of many, it’s been overengineered Symfony-style in order to be a 99% solution which doesn’t solve all the use cases, but is too bloated and complex for simple ones.
Phil tried to argue for this and justify the FIG’s decision but Anthony was quick to set that discussion straight and tell it how it is. To some, it’s starting to look like the FIG, high on power it doesn’t acknowledge, just wants to exert as much influence over the ecosystem as possible without being mindful of the consequences. To others, it’s all just very shrugworthy and not something to pay much attention to.
For me, PSR-6 is the first PSR for which I can reliably say I won’t be using in my projects without being forced to do it by the packages I pull in. I believe it solves a specific problem badly, and the caching implementations that are out there are different for a reason - a non-abstractable reason.
Due to this rift in the perception of the FIG, a new discussion / poll was put forward by Paul M. Jones who wonders - what do you think of the FIG? Be sure to voice your opinion there, if you have it!
Oh and, if you’re confused by the naming order of PSRs, don’t be.
How do you feel about the newest PSR and the work of the FIG in general?