Friday, April 11, 2008

Symfony vs Zend framework vs Cakephp vs Others

You are here because you are trying to compare these PHP frameworks to each other. You are spending your time for nothing. These frameworks are all have their own features and purposes. Zend framework is not actually framework, it is just library of useful PHP components, While cakephp and symfony are port of ROR into PHP. If you are familiar with PHP, you don't need to start new language, ruby. Instead you can use either of them. My choice was Symfony. Maybe you will like cakephp. Do not try to compare them. Just start from one of them and you will see how easy to switch among them after learning the general MVC structure and usage. Just start.

8 comments:

Wil Sinclair said...

This is a comment we get all the time- the Zend Framework is not a framework. And others say that it is. I'm interested in what your criteria are for a framework. Could you please elaborate?

bayarsaikhan said...

ok zend framework have all the rules that a framework should have, such as "dont call me, i will call you", or "dont repeat yourself" etc... It is designed cleverly, which brings PHP to new level, that proves PHP is a real object oriented language like J2EE, or ASP.NET etc...

For me, what is missing in ZF is some kind of environment, tools. You should feel at home when you are working with a framework. For example when i am developing using Symfony, i feel i am home,i.e in a world of Symfony, and of course i can get out of home when i wish, means i am not limited home.

But in ZF, you feel like you are developing in just PHP, not in a Framework. So i call ZF as a component, not a framework. It even don't have command line tool, set of plugins or addons directory(can be developed but insufficient documentation on it)

This is all my thought, and suggestions.

I like ZF, will use it in my future projects.

Stefan Koopmanschap said...

You need to consider the difference between a Component Framework and a Full Stack Framework. Zend Framework is definitely a framework, but it's a component framework. It offers certain components to use in your application. Symfony is a full-stack framework, it offers the full environment in which to develop. The fact that something isn't a full-stack framework does not automatically mean it's not a framework at all.

bayarsaikhan said...

Thank you Stefan. "Component-based Framework" is the right term for Zend.

So apple should not be compared to orange yeah?

As i said, i will continue to use both frameworks. But my current choice is orange, i.e Symfony :)

Wil Sinclair said...

Interesting. I think a lot of people would agree with you; tooling tends to 'coalesce' a framework significantly. We're actually building a tooling framework with the goal of not compromising our component-based approach. I'd be interested in your take on it.

,Wil

jonathan reid said...

See, I think my outtake is the exact opposite. When working with a package such as symfony or cake, I get hardly anything accomplished. I like refactoring, communicating with peers over how to solve this issue, and well just enjoy problem solving. That's just my outlook though.

Will, the framework is wonderful. Keep up the great work.

Raj Anand said...

Zend V/S Symfony is a good debate. Kwiqq a social networking agency based in Brighton, UK. working with clients like Oxford University Press, Thomsons Holiday, Hansard society etc have decided to not use Symfony for future client projects: http://blog.kwiqq.com/2008/08/12/announcement-bye-bye-symfony-hello-zend/

mark said...

For me I will choose CakePHP for its great implementation of MVC Concept and its flexibility. You even use other Zend Libraries in CakePHP.

Check this link

http://monmonja.com/blog/2008/10/zend-framework-inside-cakephp-12/