

Ask HN: CakePHP? CodeIgniter? Symfony? Other? - woodsier

I'm interested in what the HN community has to say about these PHP frameworks?<p>What makes them different from each other?<p>What makes each better/worse and why?<p>All things considered, what is your favorite?
======
qhoxie
Kohana is my favorite PHP framework by a long shot. The developers are very
bright and they work hard to incorporate the wants and needs of the community,
without diluting quality. It is PHP5 only, though.

Use CodeIgniter if you need PHP4. The two are similarly flexible and light.

~~~
neovive
++ for KohanaPHP. It's one of the most elegant and powerful PHP5 frameworks
you will find out there. The devs are great!

Positives: * cascading filesystem with built-in support for modules * very
clean and easy to use ORM implementation * auto loading of classes * easy to
understand syntax * HMVC support is currently in development * open
communication between community and devs * flexibility ... you can pretty much
do whatever you want with custom class libraries, vendors without much hassle.

Negatives: * still a relatively new framework that is changing fast, but the
current trunk branch is now stable. * expanded documentation module is in
development

~~~
woodsier
I had a look at Kohana after your posts, and I really like the look of it,
especially since I was leaning toward CI however didn't want to learn in an
environment which was supporting a mix of PHP4 and 5. If I'm learning PHP now,
I may as well learn PHP5 and work in an environment which can fully facilitate
that without having to bloat up and lose flexibility by supporting 4 as well.

Kohana really does look like a great framework, however after reading the
forums and wiki a little I'm worried that if I begin learning now, I'll need
to change a lot of what I learn in the coming months with the 2.3/3.0 branch
(whatever they end up calling it) - and whatever I start building will have to
change too.

This isn't a huge problem as whatever I build now will be mainly side-projects
which are designed to push my learning forward (such as small e-commerce
sites, rating sites, file uploader sites), however considering the changes
coming soon (API etc) it's a little frustrating.

However, thanks to you two I've found Kohana which is absolutely what I was
looking for. Cake is a little too bloated and complex, CI is more flexible and
simple, however to appeal to a larger userbase must support also PHP4 and 5,
while Kohana is very niche insofar that is all about 5 and thus very much less
restricted.

I'd be interested to see what other people who have worked around these
frameworks think of Kohana.

------
eisokant
I have only tried CodeIgniter so I can only speak for that but it is by far
the best decision I have made to move to this MVC framework. It's holds a lot
of libraries and helpers which will simplify most tasks and they are
incredibly easy to extend. It's downside though is that you're not able to
call functions internally from other controllers but once you get used to that
it doesn't pose many problems. I would recommend you having a look at their
documentation (which is very well done) and a demo video.

------
noodle
codeigniter is a good purely MVC framework that doesn't add much extra
overhead to your project (by default -- you can pull in plenty of overhead
with the external libraries and such). if you want the MVC separation but
don't want to be weighted down by other things and like to hack around in php,
its a good choice.

cake/symfony/etc. are rapid development frameworks that try and recreate some
of the magic of rails in php form. they're very good to get somewhere quick.
they do suffer from a bit of feature bloat and performance problems if you're
planning for a large application down the line.

i've used them all, i like them all. having said that, i would hands-down go
with codeigniter on every project _IF_ they were to pull together a better
community and form better community code and libraries. for example, it took
me forever to get a simple, working, secure authorization library in
codeigniter, including having to mess around with the module myself to do what
i wanted it to do. it comes fully functional in cakephp.

just my $0.02

~~~
qhoxie
_i would hands-down go with codeigniter on every project IF they were to pull
together a better community and form better community code and libraries_

The CI community is one of my favorites. People are quick to respond on the
forums, and Ellis Lab works closely with the community to make sure people get
the help they need. As for code, I feel that there are plenty of good
solutions for most of the common spots that CI itself does not fill, but
everybody's needs are different.

~~~
noodle
i definitely agree that the community response is there, but the community
organization and resources are not.

------
dchest
CodeIgniter is OK, but the first question is -- do you really need any PHP
framework? It's not hard to get MVC in a few lines of code without any
framework.

~~~
jayair
Yeah, but as I posted above. Its a good idea to look at the other frameworks
and learn from them.

But I do agree, it is better to right one for yourself and it is not that
hard.

------
teej
Anything but Symfony.

------
mattdennewitz
phreeze is my pick when django isnt an option

