News Feed
Jobs Feed
Sections



Recent Jobs

News Archive
feed this:

Propel Blog:
The End of Autoloading
March 25, 2011 @ 11:13:51

On the Propel blog there's a recent post talking about how the age of autoloading might be ending and how namespacing could be the next logical step (or could it).

Autoloading in PHP is a great time saver. It lets you write concise scripts without the knowledge of the exact directory structure of the libraries you use. But with the arrival of namespaces in PHP 5.3, and the influence of Java over new generation PHP frameworks, autoloading is changing. In the near future, explicit autoloading will be ubiquitous, but with none of the advantages of the old style autoloading.

He talks about "the old days" when things were included manually through file paths, how that graduated to the SPL autoloading and, most recently, up to namespace autoloading. He shares code samples of how the namespace loading works and how you can abuse it to override current classes/functionality with your own. He points out one interesting correlation though - that the "use" keyword seems a lot like the "require_once" of way back when. He shows how the added verbosity of namespace usage can be a hinderance on frameworks, citing microframeworks specifically and showing one implementation that's non-namespaced next to another that is.

0 comments voice your opinion now!
autoloading namespace requireonce use spl



Smashing Magazine:
Ask SM [PHP] Form Validation, Converting MySQL to XML
February 06, 2009 @ 13:48:11

Smashing Magazine has started off a new feature of their site - an "Ask SM" where they gather questions their readers ask about different topics like CSS, Javascript and, of course, PHP. This new post is one such response. There's five quick questions answered in this new post:

  • Form validation with PHP
  • Converting MySQL to XML
  • require_once()-problem
  • Search in different tables?
  • Getting information out of an XML-file
Here at Smashing Magazine, we want to help out PHP programmers who are just getting started or who want to improve their programming chops. Our goal is to support our community by answering their questions and trying to find solutions to their problems.

You can submit your questions in one of two ways - either via their forum or by sending a tweet (that's on Twitter to him @jasonatennui.

0 comments voice your opinion now!
form validation convert mysql xml requireonce search database


Joakim Nygard's Blog:
Optimizing PHP Through Habits
April 25, 2007 @ 10:39:00

Spurred on by some previous benchmarks [pdf] from Ilia Alshanetsky, Joakim Nygard decided to run some his own benchmarks on the same sort of functionality.

There are numerous discussions in the blogosphere about whether to use echo versus print, if for() is faster than while(), etc. and though the gains are usually very small, I decided to add my thoughts to the debate. I found an article on optimization through coding habits in Ilia Alshanetsky's zend performance slides.

According to his results:

  • Calling require_once() 10000 times in a for() loop with an empty file is 4x faster.
  • With a simply autoload requiring a class and 10000 loops of new Foo() versus require_once('foo.php'); new Foo() shows that __autoload() is ~3.7 times faster.
  • If a class method can be static, declare it static. Speed improvement is by a factor of 4.
  • Avoid function calls within for() loop control blocks
  • Always, always quote array keys.
  • Get rid of 'harmless' error messages - they take time to generate and output.

I am not out to prove Ilia wrong - he knows PHP better than most - and for all I know, they could have optimized those very functions in PHP 5.2. [...] It would appear that there are improvements, albeit small, to achieve from minimal effort. Plus I was surprised by the discrepancies I found compared to Ilia's recommendations.
0 comments voice your opinion now!
optimize coding habit benchmark requireonce autoload loop optimize coding habit benchmark requireonce autoload loop



Community Events





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


community release language podcast zendframework introduction symfony2 unittest opinion injection framework application api voicesoftheelephpant zendframework2 database phpunit conference testing interview

All content copyright, 2012 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework