INFO:
Codeigniter is currently my framework of choice. It’s relatively easy to learn, delivers lightning fast page loads, has tonnes of advanced features and has a very large and active community. As I write there’s currently around 20,000 members of the Codeigniter discussion forum. That’s 20,000 people who potentially know and want to discuss Codeigniter!
Feature wise, Codeigniter can stand toe to toe with other powerful frameworks such as Zend and Cake. It also, without question, has the best documentation of all the php frameworks. That was a major selling point for me.
Although Codeigniter is built and managed by Ellislab – an unashamedly commercial web development company – everything about Codeigniter appears to have been built in the true spirit of open source. Unlike IBM (the makers of Zend), Ellislab don’t try to hard sell to people who use Codeigniter. Thankfully, they have another product (called Expression Engine) where they like to focus their attention . The actual Codeigniter framework is indeed a 100% free and open source framework with no catches at all and (unlike Zend) no pre-packaged upsell schemes as standard.

I have intimate knownlege of Codeigniter and I think it’s fantastic. However, for me, there’s three weaknesses which prevent it from making the top spot. Firstly, it lacks some of the very powerful functionality of Yii, which slows down development time and makes mistakes more likely. Secondly, to make Codeigniter do the things I want it to do, I need to download and install addons which have been produced by volunteers from the community. So, to make it modular (which I like to do) I need to use a third party HMVC addon. Also, to get it using PHP’s native session functionality I need to download an addon for that too. That’s a problem. The final problem I have with Codeigniter is that the methodologies are so loosely structured that no two developers seem to use Codeigniter in quite the same way. So, everybody seems to have their own way of validating forms, using MVC and basically using the framework, day to day. This causes problems if you ever need assistance with a web application that’s been built using Codeigniter.
PROS:
Fast page loads
Brilliant documentation
Relatively easy to learn
Large community
CONS:
Not as many features as Yii
You need to download third party addons to get the best out of it
Non-strict structural requirements make Codeigniter a coding free-for-all


