phplondon conference logo I’m currently on the train home from PHPLondon 08 – which has been a useful and in some cases eye opening day.

At work we’ve recently tried CakePHP on a project – which hasn’t been plain sailing. There have been a few issues with cake, including the one discussed here, and its getting towards the stage where we wonder whether the early time savings made due to the more rapid development allowed by CakePHP are being lost due to the extra time required to debug what is ultimately a more complicated code base.

So the door is open to other frameworks – which made the presentation on Zend Framework, Symfony and CodeIgniter very relevant. I wasn’t that impressed with Code Igniter – I think it certainly has its place, but it seemed like it was suited to a slightly different application to mine. It has a smaller footprint than the other two frameworks, but also has less functionality. I think I am looking for a more fully featured framework. Zend Framework impressed me, I particularly liked that much of the syntax is familiar – for example, the forms code looked like PEAR’s HTML_QuickForm, which I’ve used before. Symfony also impressed – it had some really promising features, such as it’s debugging tools, which looked much more like what you’d expect from something like Xdebug or Zend Platform than a framework – a real plus. I was also told by other conference goers that symfony can use components from the Zend Framework, which lets you get the best of both.

So going forward, Symfony and Zend Platform look to be the most interesting, They both also share a few more benefits over CakePHP: they are PHP5 only, which means they use PHP5’s object model (CodeIgniter isn’t), they are both backed by commercial companies (so shouldn’t get abandoned), and the presenters claimed that in both it was easy to replace the default components with a different one (for example, to drop Smarty in).

Testing was recurring topic throughout the day. I’m really keen to try out PHPUnit now and put in place a more formal unit testing procedure on future projects, and perhaps move to a more test driven development strategy. Other testing tools were also discussed, such as the range of tools for load testing your app. A tool that was new to me was selenium – which as I understand, aims to go some of the way to automate browser based testing. It can also integrate into PHPUnit. I think its worth a look.

IBuildiings, who represent/market Zend products in the UK had a room at the conference to mark the launch of their UK operations. I attended a demo on Zend Platform, and discovered that I’ve barely scratched the surface of what this can do. I’ve really only used the debugger and some of the code profiling.The event logging and what looked like the ability to re-run and debug errors after they’ve occurred looked invaluable. I’ll certainly be evaluating the platform, again – at the moment  I think it would be well worth deploying on our servers at work, despite the cost they estimated of around £500 per year per CPU core (why do they charge per core?!).

There was also a detailed presentation on sending email using PHP. This explained many things that I knew to be best practice without really knowing why. It also introduced the completely new concept of dealing with email bounces – which I’ve never considered before. I probably don’t work on anything that sends a suitable volume of email to put this into practice at the moment, but its something I’d like to tackle when the opportunity arises.

So as I said at the start, all in all, an interesting and very worthwhile day. One thing at the conference did disappoint me though – I was hoping to come away with at least one free USB memory stick, but all I found were free mints and a PHP Elephant!!!

PS: If you want more information about any of this, the conference website should soon be carrying links to the presentations given today – http://www.phpconference.co.uk/