Trong CI3, file application/config/constants.php được load rất sớm trong vòng đời của framework.

Quy trình boot cơ bản của CodeIgniter 3 là:

  1. index.php (entry point)
    • Xác định đường dẫn hệ thống (system, application).
    • Load file CodeIgniter.php trong thư mục system/core/.
  2. system/core/CodeIgniter.php
    • Đây là "main bootstrap" của CI3.
    • Trong quá trình chạy, nó sẽ require các file config quan trọng, bao gồm:
      • application/config/constants.php
      • application/config/config.php
      • application/config/hooks.php
      • Autoload (application/config/autoload.php)
  3. Sau khi constants được nạp, toàn bộ app sẽ có thể dùng các define(...) trong constants.php.

👉 Nói cách khác:

  • constants.php được load trước cả controller, model, helper, library.
  • Nếu bạn define 1 biến hằng ví dụ NATION_CODE trong constants.php, thì bất cứ đâu trong hệ thống (controller, model, helper) cũng có thể dùng được.