News Feed

News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Tom Butler:
PHP PSR-0 Pretty Shortsighted, Really
April 16, 2013 @ 13:12:14

In a new post to his site Tom Butler gives some reasoning as to why he thinks PSR-0 is shortsighted and some examples of a possible better alternative.

A little background for those unaware of what PSR-0 is: There's a self-declared PHP "standards" group called PHP-FIG attempting to push several "standards" throughout the PHP community. [...] I have little interest in debating the politics behind pushing standards or whether small groups of developers trying to make decisions that affect the entire community is good or not, but I do object to the PSR-0 standard itself. My issues are purely practical, PSR-0 reduces flexibility and makes life more difficult for developers

While he likes the idea of a standard way to be able to include third-party libraries that can be reused in multiple systems, he suggests that it answers the wrong question. In his view, it should be up to the library/tool developers to ensure the structure of their code to work with a standard, not the other way around. He points out that a "standard" is something that should apply to all situations and some of the workarounds that are needed for PSR-0 negate this idea.

In his alternative method, he suggests an "Autloadable" interface that can be implemented by the library/tool that includes a "load" method to handle the actual class loading. Then this autoloader would be registered via a json configuration file for the package. This allows the developer to control the loading and place any exceptions they might need into their own logic instead of trying to work around possible issues with the PSR-0 loading scheme.

PSR-0 is a bad solution to a good problem. If you take anything from reading this post, remember this: If the standard defined how autoloaders could be extended, rather than how autoloaders worked, then each library or vendor could provide its own extension to the autoloader and everyone would be happy.
0 comments voice your opinion now!
psr0 autoload standard opinion shortsighted alternative


blog comments powered by Disqus

Similar Posts

Cal Evans' Blog: Six ways to be a better client for your developer - Point 2 Why Testing Makes a Project Successful and You Canít Afford to Deny It Giving Your First PHP Presentation

Brandon Savage's Blog: Data Formatting: It IS Our Job

Sameer Borate's Blog: Checking coding standards with PHP_Codesniffer

Community Events

Don't see your event here?
Let us know!

list library interview laravel5 framework security extension api community version voicesoftheelephpant podcast release language series php7 example opinion laravel introduction

All content copyright, 2015 :: - Powered by the Solar PHP Framework