Skip to main content
Overview

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

  1. The browser requests a URL.
  2. public/index.php boots the framework.
  3. The router matches the URL to a controller method.
  4. Filters run before the controller for tasks such as authentication.
  5. The controller calls models or services and renders a view.
  6. 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.