Symfony V/S Codeigniter

symfony Web PHP framework     V/S     CodeIgniter

I have developed more than 7 web projects using Symfony framework. Mobshare.in, Amvizone.com, Campaignmanger.in , Movieonline.in etc are some of the websites. But for the past 5 months my developement is in Codeigniter. It is very very lighter than Symfony and has almost all the features of Symfony. Both are MVC framework. But symfony has 4 layer while the latter has only two. Symfony uses modules (extra layer) for Controllers. But Codeigniter eleminates  that layer. It is similer to Ruby on Rails. 

Symfony uses naming convention to map controller and view. For example controller index need indexSuccess.php file as view or indexError.php as error. But in Codeigniter, we have to specify the view manually from the controller

$this->load->view(‘myview.php’); 

Symfony has command line tool to develop all the model classes. One thing you have to do is specify the scheme.yml file. But in Codeigniter, you have to make model classes from the scratch. However a lot of database operation libraries are available with it to make the coding life easier. Since we have to load each libraries manually, Codeigniter gaurantee the speed of execution. (Autoloading option is there, but in most of the case we can eliminate unwanted libraries from autoloading – just like execute on the fly)

There is no built in ajax and javascript function in codeigniter. But you can add it as plugin. Like Symfony it also has cache management, logs, testing, helpers, url rules, documentator, scaffolding etc

Codeigniter has a simple folder hierachy that everybody can understand and very less learning curve than Symfony. 

 

Go through this link if you wanna know about all the features of codeigniter : http://codeigniter.com/user_guide/toc.html

I found another interesting comparison of these two in : http://www.devtrench.com/codeigniter-vs-symfony/

11 thoughts on “Symfony V/S Codeigniter

  1. devtrench

    Thanks for linking to my site! From what I gather, most people have the same thoughts – CodeIgniter is just so much easier to use and Symfony is just too much of a black box to be approachable by most php programmers. CodeIgniter really seems to help you take the knowledge you have and easily apply that to the framework. I really do like the complexity of Symfony, but I’ve never been able to complete a project in it, where as I’ve completed a lot of stuff in CI :)

  2. Hari K T

    What about CakePHP , Yii etc ?

    Have you tried it ?

    I am looking for a nice MVC framework . I was looking Zend for a while . But thinks symfony has much more functionalities in command line .

    Have you worked with Zend ?

    Any suggestion ?
    Anyway Thanks for the article.

  3. sid

    This is a nice brief comparison. Though i haven’t used Symfony / CI, i have used Zend Framework extensively. Similarly, it implements a strong MVC and best of all, brings in a lot of community contributed modules that you can extend easily like Lucene search, Google APIs, OpenID and many more.

    @fw newbie, you asked for a comparison between CI, ZF & Drupal. While, CI & ZF are development frameworks, Drupal is a CMS. With CI / ZF you can build robust apps, but you have to do it from scratch. Whereas, with Drupal, you can launch a site quickly and keep adding functionalities to it. There is nothing in Drupal to build from scratch. Its a ‘ready-made’ website. You have to look at the scenario of your application and choose among these accordingly.

    Gr8 work Sajith!

  4. Dennis Gearon

    6-8 years ago, I started mapping out the requirements for a PHP framework. The old graphic that I generated looks amazingly like what everyone is using now. The only real difference is that I used arrays for interfacing between all layers and modules. There was no PHP OOP in those days.

    1 year ago, I looked all the ones in the article AND in the comments/replies.

    Yii put me off with the extensive OOP architecture.

    Code Igniter didn’t seem complete.

    Zend Framwork is arguably the most powerful, but hardest to develop in. Lots of control though :-)

    I eventually settled on Symfony. The learning curve STILL stretches out in front of me. It is not documented in the way that I would like it to be. Something like PHP website, Postgres, Linux, MySQL websites or Oracle manuals. (Oracle has gotten better, but it still talks in ‘Oracle Speak’)

    Essentially, a programmer has to dig into the code to see how it works; Using it as a black box only works so far – It’s got some logic to anything but simple forms that totally escapes me and makes multitable forms a PITA.

    OTOH, I still like symfony and am glad that I chose it. I like the integration with a debugger, the directory structure, the multiple layers of base objects for project wide and module wide usage.

    I think the routing

  5. Pingback: Symfony 1.4 + Codeigniter = Symfony 2 | Programming Ideas, Logics, Tips and Tricks

  6. Pingback: Symfony 1.4 + Codeigniter = Symfony 2LAP TRINH BLOG

Leave a Reply