News Feed

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

Mike Lively's Blog:
Late static binding....sorta /
September 27, 2007 @ 12:58:00

Mike Lively is happy about one thing - that late static binding (definition) has been committed and will be included with PHP 5.3. Unfortunately, he has a downside too:

The good news is late static binding has been introduced into head and looks like it will be merged into 5.3 before it is released. The horrible news is I really don't think the patch went as far as it needs to.

He talks about the original intention of the functionality (flexible inheritance for static methods/properties/constants) and how it was implemented, but with one small issue - that "static will ALWAYS return the 'resolved' name of the class used to call the current function". He illustrates with a code example showing an extended class returning a static property.

He also mentions two suggestions to help fix this issue:

  • setting the behavior of parent:: such that it forwards the calling class through the next function call.
  • introducing another scope [...] using a new keyword so parent:: could remain the same
1 comment voice your opinion now!
late static binding patch missing functionality parent inheritance late static binding patch missing functionality parent inheritance

blog comments powered by Disqus

Similar Posts

Ben Ramsey: Composer: Missing Distributions for Explicit References

Mark Jaquith's Blog: WordPress 2.0.6: Feedburner issue, and fix

Daniel Cousineau's Blog: Displaying N-Deep Trees (Remember Your Algorithms Course?)

Lukas Smith's Blog: Its the end of the world as we know it.

Community News: Launching Today: The Code Climate Platform

Community Events

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

composer series laravel yii2 application api project interview part2 symfony example introduction opinion framework podcast community php7 programming language list

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