Code Igniter

Posted in: Development

I’ve spent a good deal of time this week working on a little project using the Code Igniter framework. This is a liberally licensed PHP framework that does some of the same MVC stuff that Rails does for Ruby and CakePHP also does for PHP, but it’s a bit less rigid - which I like.

I tried setting up a project in CakePHP last year, but got rather frustrated by the difficulty I had linking up a rather involved database schema that I ended up putting the project on hold.

Code Igniter is a bit different. It automates a fair amount, but not everything (which I like). To me it’s a lot more clear where things go and how to go about doing what you want to do. I’ve also found it fairly easy to add in my own little frameworks here and there.

I think most developers fall into two categories, those who want to use a framework and those that want to build their own framework. Since I’ve been using my own psuedo-framework for years, I’m much more in the DIY camp. I’m trying hard to work within Code Igniter, and feel like it still gives me enough room to stretch my legs a bit.

At the moment, I plan to use this with two projects I’m working on. If you’re a PHP developer, it’s worth taking a look at.

Popularity: 6% [?]

Posted February 15th, 2007 @ 6:50 PM

16 Replies

  1. Cody Foss adds this Comment:

    I’ve been using Code Igniter for about the last 6 months and am in love with it. It’s easy to learn and the conventions are clear. And it’s fantastically easy to drop your own functions/classes into.

    February 16th, 2007 at 3:02 pm

  2. Bob adds this Comment:

    I’ve been using Code Igniter since just after it was first publicly released. It has been continually improved since then and a very enthusiastic community has grown up around it. It’s very powerful, very lightweight, very fast, and very flexible.

    What’s not to love?

    February 16th, 2007 at 8:54 pm

  3. isaac adds this Comment:

    I agree with all you say Alex. I try Rails then Cake and in some blog i found a link to codeigniter website. I try it and there’s no return. It’s impossible to think to create a new project in PHP without codeigniter.
    You will love it!

    February 17th, 2007 at 2:41 am

  4. Jon adds this Comment:

    I’ve been using Code Igniter for almost a year now. It’s extensible, light-weight and doesn’t get in your way.

    February 17th, 2007 at 9:43 am

  5. Matt W adds this Comment:

    Seems extremely cool. Thanks for sharing.

    February 17th, 2007 at 3:27 pm

  6. Felix adds this Comment:

    I’ve used my psuedo-framework for years too, but after ther first project made with CI.. I’ve rebuild all my work/classes as CI libraries..

    CI gives me the opportunity to be a better programmer, really.

    February 18th, 2007 at 1:50 am

  7. Arne Brachhold adds this Comment:

    I can recommend the Symfony Framework. I’ve made several smaller projects with it and don’t want to miss it anymore. Simple intranet applications with three or four entities can be done within a few hours including a full administration panel which can be easily customized. The documentation of the framework is very well done too and also available as a printed book if you don’t like to read it on the web.

    February 18th, 2007 at 5:45 am

  8. Mary adds this Comment:

    The one thing it does that I think is completely stupid: its $_GET handling. It not only doesn’t give access to it from the Input Class, it actually completely disables it, and in the name of “security”. That means your search forms won’t work, folks, unless you use $_POST - which is a terrible idea. If you search the CI forums you can find a patch for that, but I hope the developer(s) will see the light and fix this obstruction.

    http://www.codeignit[...]s/input.html
    http://www.codeignit[...]ecurity.html

    February 20th, 2007 at 1:50 am

  9. Alex adds this Comment:

    It’s not that hard to go into the config.php and change:

    $config['enable_query_strings'] = FALSE;

    to:

    $config['enable_query_strings'] = TRUE;

    is it?

    February 20th, 2007 at 9:57 am

  10. Matt W adds this Comment:

    Or to use the URL handler…

    February 20th, 2007 at 3:44 pm

  11. Mary adds this Comment:

    Completely messy urls just so you can have a search form that works? Rather rediculous, don’t you think? Especially when there is no legitimate reason to ever disable GET in the first place.

    Matt: Would you care to elaborate on just how the routing (which is what I assume you are referring to) would allow it?

    February 23rd, 2007 at 10:40 pm

  12. Alex adds this Comment:

    I just do my GET searches through a standard controller:

    example.com/search/terms+go+here

    Just like I do on this site.

    It’s really easy to change that behavior in CI if you want to. Don’t use it if you don’t like it though, there are lots of alternatives.

    February 23rd, 2007 at 11:37 pm

  13. Matt W adds this Comment:

    URL Helper was the wrong direction for me to send you in, URI Class is what I meant:

    http://www.codeignit[...]ies/uri.html

    $this->uri->segment(n)

    Permits you to retrieve a specific segment. Where n is the segment number you wish to retrieve. Segments are numbered from left to right. For example, if your full URL is this:
    http://www.your-site[...]/crime_is_up

    The segment numbers would be this:

    1. news
    2. local
    3. metro
    4. crime_is_up

    February 24th, 2007 at 8:06 am

  14. heyho adds this Comment:

    i’ve been searching a framework fit for my web application, which required fast performance for handled about 2 million requests/day. and finally found CI after read some guys done benchmarking several php frameworks. go CI, keep it light-fast

    March 20th, 2007 at 8:28 am

  15. 2007 in Review | alexking.org adds this Pingback:

    […] February - I get to release a plugin to the public that was built for a client (yay!), share some thoughts on comments and blog posts, continue talking about the alexking.org redesign and start talking about browser tab usage. I also was interviewed and decided I like Code Igniter. […]

    January 1st, 2008 at 9:50 am

  16. Dendi Reza adds this Comment:

    Hi alex, I’ve been using Code Igniter for about the last 2 months and am in love with it.
    Seems extremely easy than CakePHP.

    February 8th, 2008 at 12:08 am

Add a Comment

Please note: Use of a non-personal web site or blog in the field below and/or comments that are off-topic, personal attacks, or support requests will likely be removed at my discretion.

Note: This post is over a year and a half old. You may want to check later in this blog to see if there is new information relevant to your comment.

Triangulating for Success » « Logitech MX Revolution

About This Site

This is the personal web site of Alex King, an independent developer based in Denver, Colorado USA. More...


Crowd Favorite

Crowd Favorite is my software and web development business.

We build web applications, design and develop custom WordPress themes and plugins, and build custom sites using WordPress as a CMS.


I also have a tumblog that aggregates my online content from other services (Twitter, Flickr, del.icio.us. etc.).

I'm voting for Barack Obama

Ads