Codeigniter Basic
1.
Perfect MVC Architecture
The model, view, controller
architecture is nothing new. It seems like all the coding frameworks are MVC
now a days, and if they aren’t it can be configured easily. The MVC way of
doing things offers nice code separation and keeps things clean. Some
frameworks force you to do things by the books but CI lets you use MVC in a way
that makes sense you.
2.
Little to no server requirements.
Unlike other PHP frameworks, CI
works with both PHP 4 and 5. That makes the lives of someone like me who has to
be able to work seamlessly between the two environments much easier.
3.
Easy to understand and extend.
CI is the first framework that I
used that actually makes sense to me. I was able to get up and running with CI
the quickest. CI is also easy to write new libraries, change the behavior of
existing libraries and just change the overall behavior of the framework with
little effort.
4.
All the tools in one little package.
Calendar, e-mail, zip encoding,
validation, uploading, sessions, unit testing… that is just a few of the built
in libraries that come with CI. It also includes a boat load of default helpers
for things like forms, file handling, arrays, strings, cookies, directories and
more. Plus, if that wasn’t enough, you can create your own libraries and
helpers or use code that has been developed by the CI community.
5.
No “installation” necessary.
CI fits this requirement nicely. No
need for PEAR packages or server modifications to get the framework up and
running. Just upload the files to your server and your off.
6.
Built in security tools.
CI allows you to implement as much
or as little security as you feel is necessary for your app. It does some
things by default like unsetting all global variables regardless of PHPs
register_globals directive and turning off the magic_quotes_runtime directive
during system initialization so that you don’t have to remove slashes when
retrieving data from your database. Other things can be enabled like cookie
encryption, handling session data with a database and automatically escaping
SQL queries.
7.
Database abstraction.
Every decent framework has a
database abstraction layer now a days and CI is no exception. You can easily
create insert, update and delete statements without needing to write raw SQL.
Handle connections to multiple databases within one application
8. Active user community.
There is a nice and big user
community to work with when you have a problem or question. The CI website has
a forum and wiki when you’re looking for answers. No confusing group mailing
lists or chat channels just to get a quick answer to a question.