CodeIgniter is a PHP Framework aimed at helping you develop PHP web applications at a rapid pace.
I have always been interested in working with CodeIgniter but have never taken the plunge. To date I have been primarily a procedural programmer and use OO techniques where suited. But now that I am looking to start developing some large scale web apps that need to be able to scale I am looking into using a framework once again.
I have spoke with some leads on a few web apps such as CarbonMade and they have their app built using C#, and .NET (an ASP based framework). I know that if I want to build a highly scalable project capable of being used by thousands of users that I will need to use a stable framework or build a custom framework myself.
I have done a lot of research over the years into this stuff but just know am I beginning to act on these ambitions. O, the power of procrastination. That is a whole other topic in itself.
I have researched CakePHP, CodeIgniter, Symfony, Zend and a few others. I did a little discovery with CakePHP and CodeIgniter and read a plethora of forums and blogs surrounding them, how they work, likes, dislikes, the whole works. I have made my decision to work with CodeIgniter based on a few things.
First off, it has a really small footprint. This means that the file size of the package is very small and contains just what you need to get on your way building your application. Some of the other frameworks come with everything under sun pre-packaged in the native install. This causes it to become extremely bloated which is not good as it brings down performance. They try and please each and every persons needs right off the bat. Whereas CI comes with the core essentials and if you may need some additional functionality you can add a library yourself—when you need it.
Secondly, it is very fast on 2 notes, firstly being performance (because of its small footprint see last point) and secondly fast to configure. Once you download the CI package you can be up in running with a “Hello World” in a few minutes.
Thirdly, it does not require me to use the command line. I am learning more and more about the command line but there are certain things I like to use it for. My framework config is not one of them. Many frameworks out there require the use of the command line to be installed and configured. I feel this limits the people that can use it as using the command line requires some extensive knowledge to grow beyond the basics.
Last but not least it is not bound to a certain templating engine. Most frameworks out of the box use a particular templating engine to generate all the the views. Whereas CI has the ability to use a templating engine if you so desire but if you opt to simply write your own HTML as you go and not worry about learning a templating engine along with your framework CI is there for you.
I look forward to making CodeIgniter a staple asset in my skill set.
Stay tuned for my upcoming beta release of my organizational web app and please contact me if you would like to join the beta-tester list.
Until next time.

Hi
I went through the same process of discovery for a decent light mvc framework. These were actual real life experiences (actually building sites with) :
* ci – great doc, easy to understand but not happy you cant use the $_GET array out of the box (need to change the core – dodgey?) and its php4 based.
* kohana 2.0 branch – basically all the things ci should have been (php 5 especially) but the latest version 3.0 is lacking documentation.
* yii – very good and fast mvc with lots of nice helper classes. My only criticism is that you have to use its orm to use some of the other classes (like pagination).
Keep posting stuff like this i really like it
Pingback: Working with CodeIgniter: A PHP Rapid Development Framework | My Web Site Resource