Pragmatism in the real world

Typo in Zend Framework 0.9

The good news: Zend Framework version 0.9 came out today The bad news: There's a typo in Zend/Db/Table/Row/Abstract.php! (Issue is ZF-1080) To fix it, add a < at the start of the first line of Zend/Db/Table/Row/Abstract.php so that it reads: <?php Oh well…

Goodbye Zend.php

For those of you not following along on the fw-general mailing list, the Zend.php file along with its Zend class has now gone! This is good news as the Zend class was schizophrenic and provided functions responsible for file loading, registry, debugging and version information! Another side effect is that the entire Zend Framework is stored within the Zend directory making those who use svn:externals on their lib directory happier. We now have new classes:… continue reading.

Zend Framework Tutorial for ZF v0.8

A few people have asked about updating my Getting Started tutorial for version 0.8 of the Zend Framework. I finally had a chance to check the code and it worked fine with no changes (as expected!) Darren, one of my colleagues as recently gone through the tutorial for me and found some typos, so I have put out a new version (1.2.4) that fixes these. I've also updated the code too to make it slightly… continue reading.

Indonesian Translation of the Tutorial

Riki Risnandar has done some sterling work and translated the tuorial to Indonesian! Thank you very much Riki! You can download the PDF directly and it is also listed on the main tutorial page.

Zend Framework Tutorial for 0.7

Just a quick update to let you know that version 1.2.x of my Zend Framework Tutorial does actually work on version 0.7 of the framework with no changes. This is because the public API for the MVC components in 0.7 are backwards compatible with 0.6. I expect that from now on, the basic API for the MVC will stay the same. More advanced stuff, like the module support might change though.

Modules

One of the new features to hit the Zend Framework since 0.7 is Zend_Controller_ModuleRouter and its sibling Zend_Controller_ModuleRewriteRouter. This allows for separating out sets of controlers, models and views into their own modules. The directory structure then looks like: application/ controllers/ IndexController.php ArticleController.php blog/ controllers/ IndexController.php models/ views/ news/ controllers/ IndexController.php ListController.php models/ views/ models/ views/ lib/ Zend/ webroot/ css/ img/ js/ index.php To set this up, you use this code in index.php: $frontController->setControllerDirectory(array( 'default'… continue reading.

Simplified Chinese version of the Zend Framework Tutorial

Not only has Jason Qi found a lot of typographical and lexical errors in my tutorial (I know, I know.. you'd think by now I'd have found them all!) but he's also translated it into Simplified Chinese! Download the PDF from his site now! Thanks very much Jason.

Extending Zend_View_Interface for use with Smarty

Zend Framwork v0.6 has introduced new MVC code and one of the changes is that Zend_View_Interface now exists to allow for easy implementation of other templating engines other than PHP based ones like Zend_View or Savant. We use Smarty at work and when we migrate our content management framework to Zend Framework, we intend to continue using Smarty. Hence, I've created AkCom_View_Smarty to play with how we are going to use Smarty within the Zend… continue reading.

Zend Framework Tutorial for ZF v0.6

Now that work's finished for the year, I've finally had time to update my tutorial so that it works with 0.6 of the Zend Framework. There are lots of changes this time to accomodate the new MVC code that Matthew Weier O'Phinney has written. The new MVC system is very simple to use and also very powerful, so I feel that it definitely fits with the stated goals for the Zend Framework.

Version 1.1.2 of the Tutorial

Just a quick note to let you know that I've updated my tutorial to version 1.1.2. This version fixes the include path and a slew of typos that have been found by Brendon Kozlowski. Thanks Brendon! Isn't it amazing that even after all the reading that's been done of this tutorial that there are still typos to be found?!