c方法是thinkphp用於設定、獲取,以及儲存配置引數的方法,使用頻率較高。
了解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);
獲取引數
要獲取設定的引數,可以用:
$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就是前面儲存引數時用的快取的標識,必須一致才能正確取回儲存的引數。取回的引數會和當前的配置引數合併,無需手動合併。
via:
ThinkPHP函式詳解 C方法
c方法是thinkphp用於設定 獲取,以及儲存配置引數的方法,使用頻率較高。了解c方法需要首先了解下thinkphp的配置,因為c方法的所有操作都是圍繞配置相關的。thinkphp的配置檔案採用php陣列格式定義。由於採用了函式過載設計,所以用法較多,我們來一一說明下。設定引數c db name ...
ThinkPHP函式詳解 A方法
a方法用於在內部例項化控制器,呼叫格式 a 專案 分組 模組 控制器層名稱 最簡單的用法 user a user 複製 表示例項化當前專案的useraction控制器 這個控制器對應的檔案位於lib action useraction.class.php 如果採用了分組模式,並且要例項化另外乙個ad...
ThinkPHP函式詳解 I方法
其命名來自於英文input 輸入 主要用於更加方便和安全的獲取系統輸入變數,可以用於任何地方,用法格式如下 i 變數型別.變數名 預設值 過濾方法 變數型別是指請求方式或者輸入型別,包括 變數型別 含義get 獲取get引數 post 獲取post引數 param 自動判斷請求型別獲取get pos...