CodeIgniter is an application framework
1. Free: CodeIgniter is licensed under the Apache/BSD-style open source license, you can use it as long as you want.
2. Simplicity: CodeIgniter is truly lightweight, and the core system only requires some very small libraries.
3. MVC: CodeIgniter uses the MVC method to better separate the presentation layer and logic layer.
--Application Flowchart
index.php serves as the front-end controller to initialize the basic resources needed to run CodeIgniter. The Router examines the HTTP request to determine who should handle the request. If the cache file exists, it will bypass the usual system execution sequence and be sent directly to the browser. Security. HTTP requests and any user-submitted data will be filtered before the Application Controller is loaded. Controllers load models, core libraries, helper functions, and any other resources needed to handle specific requests. The final view renders the content sent to the web browser. If caching is turned on, the view is cached first so it will be available for future requests. Model-View-Controller
CodeIgniter is based on the model-view-controller design pattern. MVC is a method of separating the logical and presentation layers of an application. In practice, since the presentation layer is separated from PHP scripts, it allows your web pages to contain very few scripts.
Model represents your data structure. Typically, your model class will contain functions for retrieving, inserting, and updating data from your database.CodeIgniter is very loose on MVC usage, so models are not required. If you don't need this separation, or find that maintaining the model is more complicated than you thought, you can ignore them and create your own application with minimal use of controllers and views. CodeIgniter can also be combined with your existing scripts, or allows you to develop your own core libraries for the system, allowing you to work in the way that works best for you.