Page 1 of 1

Best PHP5 Framework

Posted: Wed Jul 04, 2007 9:01 am
by wgrange
We’re re-building our web development solution for multiple projects from the ground up and we’d like to know your thoughts on which is the best future-proof, tried and tested PHP5 framework out there.

We want something that’s very flexible, OOP based and Ajax happy. Anything that comes with things like CMS components (or class libs) to make development quicker is a massive bonus also, though we’ve various in-house bespoke CMS systems we’ll need to integrate too.

As ever, whilst we could just go ahead and try a few out [and are doing] it’s going to save us an awful lot of testing time/fumbling about if there are some of you out there who’ve had the chance to work with these frameworks to know which is the best! If that’s you or you have any comments on this please post.

Here are some we’re definitely looking at:
http://seagullproject.org/
http://codeigniter.com/
http://framework.zend.com/

Also is there anything missing from our list of best players above? (apart from CakePHP)

Posted: Wed Jul 04, 2007 9:43 am
by Maugrim_The_Reaper
Do you have a particular preference about approach?

For example, the Zend Framework is a loosely coupled component library where you can roll an application by knitting the components together yourself. On the other end of the scale are full-stack frameworks like Symfony which reduce your flexibility by offering tighter coupling which is offset by needing less knitting together (it's done by convention) and offer pre-built modules - Symfony has a few ready to deploy modules like a mini-blog.

It's worth noting you can do both if so inclined. The ZF offers some very good components which are sufficiently decoupled to reuse in another framework as standalone components. In that respect ZF also has a PEAR-like build up of commonly used functionality, i.e. it's a component library more so than a full-stack framework.

Personally I use both the Zend Framework and Symfony. Symfony usually for smaller applications, or websites, where a lot of flexibility is not required and change is highly unlikely at a rapid pace. The component approach of the Zend Framework I find more suitable for larger projects where flexibility is essential, and I really can't abide to be told which way to build the app. I won't say any one framework is better than the other - each have their good and bad points and often where one fits a particular project, it won't necessarily fit another as easily.

I would guess your decision will eventually boil down to your own experiences while testing these frameworks - unlike with Ruby, PHP really doesn't have an overwhelmingly top dog framework.

Posted: Thu Jul 05, 2007 5:26 am
by wgrange
Very valuable post - thanks Maugrim! Yes - by necessity we need flexiblity but speeding up the development process would obviously be a huge advantage. Our best solution at the present time probably lies in a mix of ZF and the use of a robust/flexible-as-possible rapid development framework where appropriate.

Which brings the question: does anybody use the Zend Framework along-side any of the rapid development frameworks like Seagull/CodeIgniter/Symphony? Would be good to get to the bottom of which 'compliments'/works along-side the ZF most effectively - whilst allowing for at least some flexibility within the site structure?