WebAppers

/ best free open source web resources /

Shopify

Comparison Between Zend and CakePHP Framework

Posted · Category: Framework

A lot of people have been asking for some comparison articles for some of the popular frameworks. Here I found a nice comparison between Zend framework and CakePHP framework from Douglas Brown.

ZF offers a simple component library to provide 80 percent of the functionality mostly needed by developers. The rest of the 20 percent can be altered as per your requirements of the business. This can be done since it has a flexible architecture and you do not need any configuration file to get started with. Due to this, training costs are lessened and the product reaches the market sooner.

CakePHP is a rapid development framework for PHP that offers a flexible architecture for development, maintenance and deployment of applications. It uses the usual design patterns like MVC and ORM within the convention over configuration paradigm that helps lower development expenses and does not need the developers to write a lot of code.

Just like ZF, CakePHP does not require configuration. It is very simple to use. The company has a user friendly community called #cakephp on IRC that helps new users to begin. It is distributed under the MIT License and promises Best Practices like security, authentication and session handling. It has an object-oriented approach to keep you at ease.

Overall, both these frameworks are good to use as per your requirements. CakePHP is suitable for developers new to MVC and those who require stricter conventions. ZF is a choice for those who need better control over the application design and built-in support for renowned Web services. Both the frameworks are developing fast and the choice is entirely yours.

Some of the people noted that CakePHP has poor documentation. The Zend Framework definitely has better documentation. So if you were just getting started using an MVC Framework, ZF would be a good place to start.

Source: Zend Framework vs CakePHP Framework

35 Comments
  • http://www.cryptonet.be Junni

    Small but nice comparision. Maybe a suggestion for a new article: Symfony Framework versus CakePHP Framework ?

  • http://www.geturl.pl kmrozek

    Forgot one most important issue. ZF was created by PHP starters, and that’s why Adobe is cooperating with ZF. What does it mean? It means, that there is no better framework for connecting flash – > php – > database. Not long time ago ZF and Adobe released most effective ways to communicate flash with php, that no other framework has.
    I think ZF it is the best sollution for flash-based web creators.
    I hope my english is understandable ;)

  • Mush

    #cakephp in witch irc server ?

    Thanks, good read

  • ditman

    Not too long ago I had to compare Symfony vs Zend vs Cake at work.

    Out of the box, Symfony won (for us) and we’re still happily using it :)

    It’s a good read though!

  • http://www.fabriziodilello.com FABRIZIO DI LELLO

    ….and what about CodeIgniter ? For me, it’s simply fantastic !

  • http://www.clipcroma.com Jônatan Fróes

    and what about CodeIgniter? For me, it’s simply fantastic![2]

  • Luke boobyW

    CakePHP used to have poor docs, not nay more. book.cakephp.org is a full manual – and has user comments. Along with a very very active blog community, the IRC channel and the bakery.cakephp.org you can’t go wrong. Don’t forget to subscribe to the CakePHP google group too, and read the digest. You can learn a lot that way.

    I don’t have experinece of the other systems, so cannot comment on them.

  • http://www.pleth.com Greg

    We have been using MODx for the past year and have no complaints. The community is well attended and really responsive when needed.

  • http://robwilkerson.org Rob Wilkerson

    There’s another very good comparison of the same two frameworks at 2tbsp (http://2tbsp.com/node/87). I used this comparison to make my own choice.

  • http://www.clockcrew.cc pineappleclock

    Symfony and Zend are PHP 5 only, which is a dealbreaker for us – A lot of hosts have php4 requirements and making a framework based off of PHP5 would limit us.

  • http://rafaelbandeira3.wordpress.com rafaelbandeira3

    It was a good article till I reached “… Some of the people noted that CakePHP has poor documentation.”
    … and you – with all your influence – are writing based on “some people”‘s concern?

    Well anyway, nobody is perfect, and it was not so clever. Good article though, as the rest of the site.

    By the way, CakePHP documentation might have been poor one day, but it is totally revamped and there are information for all level of experiences and every feature is covered.

  • http://www.colingreig.com Colin

    Great article! Would love to see more framework comparisons. (CSS, JS, PHP, etc)

  • http://cakephp.org/ nate

    Hello,

    A couple of corrections and points of clarification:

    “Just like ZF, CakePHP does not require configuration.”

    This isn’t really true, or at best it’s misleading. CakePHP requires virtually no configuration, but it actually provides you a default application structure to begin building. ZF, on the other hand, provides you nothing out of the box but a set of components. When it comes to actually building your application, you’re completely on your own. So in that sense, ZF requires LOTS of configuration. It certainly requires a lot more work to get started writing an application.

    “Some of the people noted that CakePHP has poor documentation.”

    Nope. CakePHP *had* poor documentation. A very long time ago. Now, CakePHP’s documentation is quite good, and increasing and improving daily. We even have teams that have translated the documentation into over a dozen different languages.

    “ZF was created by PHP starters”

    Not true. Zend did not “start” PHP, they don’t control it — they don’t even maintain it.

    “…there is no better framework for connecting flash – > php – > database.”

    Again, not really. There’s nothing special about Zend’s AMF classes. CakePHP has the CakeAMF plugin, which is far easier to use, and better integrated with your application.

    “#cakephp in witch irc server ?”

    The #cakephp channel is on irc.freenode.net.

  • Jon

    One thing with Cakephp to note is migration between versions. They don’t appear to have an upgrade path between versions so if you code websites to one particular version of the framework then you’re pretty much stuck with it… this was the case with myself and 1.1/1.2

  • http://www.slack5.com slack5

    Great writeup! We use symfony where I work, but it is simply to bloated for my personal use. I use Zend for most of my projects, CodeIgniter for lightweight stuff (one page admin areas, etc).
    I tried cake once, but could not get past the poor docs (about a year ago), perhaps I’ll take another look.

    Simply, use what the project requires.
    I just did a write up comparing symfony to django.

    pineappleclock – most hosts anymore offer php4 & 5, I if your current host does not, I highly suggest you look around.

  • http://framework.zend.com Wil Sinclair

    Jeez, Nate. Don’t you think a small disclaimer might be in order? ;D

    Here’s mine: I’m the manager of the Zend Framework project. Don’t expect my comments to be entirely unbiased. :)

    ZF didn’t start to address the problem of RAD tools until a few months ago; honestly we saw greater priorities in developing components that would serve our users well at runtime. We now have very active initiatives around Zend_Tool and Zend_Application. ZF 1.8′s central theme will be RAD, and we’re currently planning on releasing in the first half of 2009. I can’t characterize the CakePHP team’s take on configuration because I’m not familiar enough with the framework, but we’ve had what I would describe as a ‘Convention *or* Configuration’ viewpoint since the beginning of the ZF project. The RAD tools reflect that opinion. They work as well with custom project structures as with the default out-of-the-box structure. We see project structure, along with many other facets of PHP applications, as the user’s prerogative.

    I have heard that the Cake documentation has improved exponentially and is now pretty good, although I haven’t had a chance to check it out myself yet.

    Nate, have you used CakeAMF? How is the stability/maintenance of amfext? Wade considered using amfext as an optional performance optimization in Zend_Amf, but we decided against it because it was seeking a maintainer at the time, wasn’t up to a stable release, and didn’t support many of the features we were targeting. In any case, it may matter to some people that Adobe contributed Zend_Amf to ZF and has been providing a lot of resources- webinars and user group tours, for example- that some users may find helpful. On the other hand, it might not matter to you.

    As for Zend’s relationship with PHP- I guess I don’t see how that’s relevant in the comparison. Certainly “starters of PHP” is not an accurate characterization. In any case, there is tons of information out there about Zend’s role in the PHP project- both historically and currently.

    I have heard 2 percieved benefits of having Zend Technologies behind ZF from our users:
    1) Some users- especially business users- like the full services that Zend offers for ZF. Certification, training, consulting packages, and support contracts are important for these users.
    2) Some believe that this is a guarantee that the project will not go away. Certainly, as long as there is a Zend Technologies, there will be a Zend Framework project. But I actually see our community as a stronger guarantee that it won’t be going away; there are simply too many people using it in critical projects for it to go unmaintained. CakePHP has a very strong community, too.

    Don’t forget our IRC channels! :) #zftalk (for users discussions/support) and #zftalk.dev (for contributor discussions) also on irc.freenode.net.

    Finally, I’ve said this so much even I’m getting tired of hearing myself say it :) – keep in mind that there is no one framework that is best for all projects and developers. I encourage everyone to look in to their framework candidates thoroughly. Build an application or 2 with the front runners. When you find the framework that meets your requirements and is a pleasure for you to develop in, you’ve got the right framework. And for many PHP developers, that will be no framework at all. Whatever you do, while you might take comparisons like this as input, don’t base your decision entirely on what other people like.

    ,Wil

  • diva

    I just found on the net a slide on Zend Framework and CakePHP: http://www.slideshare.net/pcdinh/how-to-learn-to-build-your-own-php-framework-presentation

    The presenter points out some shortcomings of CakePHP and Zend Framework

  • http://www.aktifotomatikkapi.com/index.php/bariyer-2 bariyer

    i prefer zend.

  • bob

    CodeIgniter has 100% full documentation that is clean and easy to read. It is also the lightest of the frameworks. You can also use it with Zend if you want some features it doenst have.

  • Pingback: Ray Cheung’s Blog: Comparison Between Zend and CakePHP Framework | How2Pc

  • Chucho

    Stop all this Cake Vs Zend nonsense! Zend is an enterprise framework, used by certified software engineers. Cake is a garage framework used by webmasters.

  • Pingback: Ray Cheung’s Blog: Comparison Between Zend and CakePHP Framework : WebNetiques

  • Pingback: Ray Cheung’s Blog: Comparison Between Zend and CakePHP Framework : Dragonfly Networks

  • http://cakephp.org/ nate

    @Chucho: I’d say that’s a fairly uneducated comment. CakePHP has a long list of big-business users and case studies to back it’s quality and readiness for large-scale projects. The fact that “nobody got fired for picking Zend” does not detract from that.

  • http://framework.zend.com Wil Sinclair

    @Chucho @Nate: I agree with Nate that this is a flawed characterization. I know of a pretty extensive list of no-nonsense commercial users of Cake. On the other hand, I know of a lot of amateur developers working on hobbyist sites with Zend. In particular, I don’t see how this characterization brings any light in to the discussion.
    I find these discussions useful only when we all stick to the facts. For example, I don’t think it’s very helpful for someone to say ‘I like this framework’ in a comment. Why do you like it? What does it offer that others don’t? And, if we’re going to stick to facts, we better make sure that no framework is mis-represented.

  • Pingback: Maks All Read - PHP « Umumi Hela ve Özgürlük

  • Steve-o

    Any framework that uses the ridiculous PHP4 faux-object model already has a strike against it and should be discarded immediately. End of debate.

  • http://dead.at wese

    I was a fan of CakePHP when php5 was ‘new’, but since they hold on to the php4 i wonder what will happen with php6.

  • http://www.aSecondSystem.com will

    Documentation:

    The main problem with using ANY framework is it can be a bit tricky to work out how to do anything compared to plain php. Therefore documentation is an absolutely critical factor.

    ZF documentation is quite frustrating to use. It tends to give very specific information, that often is not very complete. There is no comments section to the documentation like php.net or cakes documentation, so there is nowhere for users to expand on the extremely terse docs.

    o, and my disclaimer: im a web developer using ZF for 90% of my current commerical and garage projects.

  • http://sorry.com May be

    Sorry , I don’t think Zend has a good documentation which helps to learn quickly for a newbie :( .
    Sorry and I strictly disagree with it . As I was new to MVC and frameworks and to my experience with these .

    But ZF may come with a better example in future.

  • Houcem BERRAYANA

    I was using cakephp for more than a year, to be honest it’s a perfect framework for RAD development. However, I found that with cakephp is not a very good solution for big applications. I was using cake for building a social network web site. the first 4 months, it was perfect and the development was great. But when the project becomes bigger.. and when we started using FLEX with cakePHP the problems appear.

    I think that cake is the better solution for 1- 5 months projects.

  • http://fxrialab.com Minh Tran

    cakephp is for small to medium sites. it is really an aid to rapid development. you dont need to maintain db code this is a win. but it is quite slow in comparison to other frameworks. DOO is claimed to be fastest php framework and lightweight and easy.

    you need to use them to have the real experience.

  • crazyshezy

    which framework supports scalability of a project better?
    As a project grows from few hundred users to a couple million users which framework will hold out longer?

  • http://www.hirewebdevelopersindia.com/ Eric Lewis

    As per my opinion,
    CakePHP has poor documentation. Zend Framework works with other frameworks as
    well. CodeIgniter has excellent documentation and is one of the fastest
    frameworks out there.
     

  • Shalini

    I have used CakePHP for more than 4 years and have found that its is a nice one. Simple and is documented well. Their website itself carries all the developer/API docs with their downloadable versions.

Supported By

Deals

Web Browsers Icon Set
Food Icon Set
Flat Icon Set

Flat Icon Set

100 icons