CodeIgniter 開發中,全局變量管理常讓人糾結:放在 Helper?自定義常量?其實框架原生的**配置類**才是最正規、優雅的方案。
主配置文件位於 application/config/config.php,核心是一個 $config 數組,存放框架級配置。為區分業務與框架配置,建議**新建獨立配置文件**。
新建 application/config/vars.php:
<?php /** 工作目錄配置 */ $config['src']['cache'] = FCPATH . '../src/cache'; $config['src']['modules'] = FCPATH . '../src/modules'; $config['src']['www'] = FCPATH . '../src/www';
編輯 application/config/autoload.php:
$autoload['config'] = array('config', 'vars'); // 自動加載主配置與業務配置
方式一:獲取整個子數組
$src = $this->config->item('src');
$cachePath = $src['cache'];
方式二:直接獲取嵌套鍵值(CI 3.0+ 支持)
$cachePath = $this->config->item('cache', 'src');
ENVIRONMENT 常量加載不同環境配置若需動態修改運行時配置:
$this->config->set_item('src.cache', '/new/cache/path');
但注意:set_item 僅影響當前請求,不會持久化到文件。
官方文檔:Config Class
善用配置類,讓全局變量管理回歸框架設計初衷,代碼更整潔、可維護性更強。