Overview
CodeIgniter is a small, focused PHP framework built around the model-view-controller pattern. It provides a front controller, routing, a database layer, validation, sessions, security helpers, and file utilities while leaving most architectural decisions to you.
Why developers choose CodeIgniter
- Small footprint. The framework installs quickly and does not require a long list of dependencies.
- Clear conventions. Controllers, models, and views live in predictable folders, which keeps teams aligned.
- Useful defaults. Routing, validation, CSRF protection, sessions, and query building work out of the box.
- Gradual adoption. You can use as much of the framework as your project needs.
- Readable internals. The framework code is straightforward, which makes debugging and extension easier.
The request lifecycle at a glance
- The browser requests a URL.
public/index.phpboots the framework.- The router matches the URL to a controller method.
- Filters run before the controller for tasks such as authentication.
- The controller calls models or services and renders a view.
- The response returns to the browser.
What CodeIgniter is not
It is not a full application platform with an admin panel, an ORM-first data layer, or opinionated front-end tooling. Those choices remain yours, which is why CodeIgniter suits small teams that want a solid foundation without a large framework contract.
Version note
This course targets CodeIgniter 4. The concepts of routing, controllers, models, and filters are stable across the 4.x line, while a few helper functions may differ between minor versions. Check the official user guide for the exact version you install.