CodeIgniter Advantages And Disadvantages
Its goal is to enable you to develop projects much faster than you could
if you were writing code from scratch, by providing a rich set of
libraries for commonly needed tasks, as well as a simple interface and
logical structure to access these libraries. CodeIgniter lets you
creatively focus on your project by minimizing the amount of code needed
for a given task.
The first and the most important point which attracts the every developer towards the CodeIgniter, is its faster response time.
CodeIgniter gives the response too fast that till now no framework is in this world which can give that so fast.
CodeIgniter user community is so big to work with when you have a problem or question.
Ready to Go Framework with almost Zero Configuration.
If you are going to start a new project with custom PHP then you obviously need to do things like creating database, creating
configuration files and much more. We will have to connect to database everytime we use database queries. Also we will have
to use functions directly into php file wherever necessary.
But in codeigniter, we do not need to worry about such classes and configurations.
It's very simple here !!
Just download latest version, download it and set up few things and it's done !!
The whole zip comes with 3 folders usually,
- User Guide
All our work will go to the application folder. Each sub-folder in application folder defines the purpose of it's creation.
Ex: Controller folder includes all the custom php classes that is brain of everything that binds everything we create to control entire functionality.
Views folder includes all the files that are actually going to show content on website mostly the UI part.
Config folder includes all the settings related to database connection, including necessary CI libraries, helpers etc.
The system/ folder contains all libraries and classes which we can add and use in our application. We dont need to do anything with system folder.
The system folder contains all of the inner-workings of CI. All of the files that will help power our web application are contained within this folder, and thanks to the CI team, we have access to all of this functionality right away, without have to write it ourselves.
Ellislab is CodeIgniter''s technical documentation intended to give assistance to people using CodeIgniter. If a programmer stucks somewhere during coding in codeIgniter with any error
showing syntactical or any library missing error, he can quickly refer to this documentation here https://ellislab.com/codeigniter/user-guide/.
This documentation is divided into many sections to help programmers to find solutions.
Some frameworks force you to do things by the books but CI lets you use MVC in a way that makes sense you.
CodeIgniter is quicker than cake php, zend, symphony.
Flexibile, Secure & User Friendly
Light Weight, OpenSource and Fast
CodeIgniter has rich set of libraries which are easy to write and change it's behaviour.
CodeIgniter has logical structure to access these libraries.
Additional libraries are loaded dynamically upon request, based on your
needs for a given process, so the base system is very lean and quite
CodeIgniter comes with full-range of libraries that enable the most commonly needed web development tasks, like accessing a database, sending email, validating form data, maintaining sessions, manipulating images,
It does not require you to use the command line.
No need to learn templating language as template parser is optionally available.
No need to use any unix commands.. just install tools and uploads to server directory
CI also lets you manipulate your database like add/remove columns from
tables, create new tables and remove old ones using it’s new
database forge library.
CodeIgniter has standard Error Handellin technique
CodeIgniter keeps site secure from CSRF/XSRF Attacks and SQL injection by using built in classes and libraries.
CodeIgniter has Cache library
Though it encourages MVC, but does not force it on you.
CodeIgniter uses the Model-View-Controller approach, which allows great separation between logic and presentation.
Separation of code has been very easy in Codeigniter.
Generates Clean URLs
The URLs generated by CodeIgniter are clean and search-engine friendly.
CodeIgniter uses a segment-based approach Rather than using the standard “query string” approach to URLs.
The system can be easily extended through the use of your own libraries, helpers, or through class extensions.
assists the developer to build core libraries for the system and
enables you to integrate your own existing scripts with database.
And to improve your productivity it also supports for third-party addons/plugins for additional functionality.
Built in security tools
- Unsetting all global variables regardless of PHPs register_globals directive
- Turning off the magic_quotes_runtime directive during system initialization
- Enable cookie encryption
- Handelling session data with a database
- Auto escaping SQL Queries
Configuration and Customizable
This aspect helps the developers to create what they need to develop based on the web applications.
In addition, configuration and customizable of the files are easy in this frameworks.
Finally You want to spend more time away from the computer :)
Its PHP based only and not very object-oriented in some parts.
Framework itself has no built-in ORM (only via 3rd party solutions). -
CodeIgniter 2.1.3 needs PHP 5.1.6, but versions before 2 still worked with PHP 4.
This was a drag since everybody moved on to use PHP 5.