thinkphp里面的c方法是用于設置、獲取,以及保存配置參數的方法,其使用語法如“C(‘DB_NAME’,’thinkphp’);”,表示設置DB_NAME配置參數的值為thinkphp。
本文操作環境:Windows7系統、thinkphp v5.1版、Dell G3電腦。
thinkphp里面的c方法怎么用?
ThinkPHP函數詳解:C方法??
C方法是ThinkPHP用于設置、獲取,以及保存配置參數的方法,使用頻率較高。
立即學習“PHP免費學習筆記(深入)”;
了解C方法需要首先了解下ThinkPHP的配置,因為C方法的所有操作都是圍繞配置相關的。ThinkPHP的配置文件采用PHP數組格式定義。
由于采用了函數重載設計,所以用法較多,我們來一一說明下。
設置參數
C('DB_NAME','thinkphp');
表示設置DB_NAME配置參數的值為thinkphp,由于配置參數不區分大小寫,所以下面的寫法也是一樣:[-more-]
C('db_name','thinkphp');
但是建議保持統一大寫的配置定義規范。
項目的所有參數在未生效之前都可以通過該方法動態改變配置,最后設置的值會覆蓋前面設置或者慣例配置里面的定義,也可以使用參數配置方法添加新的配置。
支持二級配置參數的設置,例如:
C('USER.USER_ID',8);
配置參數不建議超過二級。
如果要設置多個參數,可以使用批量設置,例如:
$config['user_id']?=?1; $config['user_type']?=?1; C($config);
如果C方法的第一個參數傳入數組,就表示批量賦值,上面的賦值相當于:
C('USER_ID',1); C('USER_TYPE',1);
[-more-]
獲取參數
要獲取設置的參數,可以用:
$userId?=?C('USER_ID'); $userType?=?C('USER_TYPE');
如果USER_ID參數尚未定義過,則返回NULL。
也可以支持獲取二級配置參數,例如:
$userId?=?C('USER.USER_ID');
如果傳入的配置參數為空,表示獲取全部的參數:
$config?=?C();
保存設置
3.1版本增加了一個永久保存設置參數的功能,僅針對批量賦值的情況,例如:
$config['user_id']?=?1; $config['user_type']?=?1; C($config,'name');
在批量設置了config參數后,會連同當前所有的配置參數保存到緩存文件(或者其他配置的緩存方式)。
保存之后,如果要取回保存的參數,可以用
$config?=?C('','name');
其中name就是前面保存參數時用的緩存的標識,必須一致才能正確取回保存的參數。取回的參數會和當前的配置參數合并,無需手動合并。