91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ThinkPHP加載自定義的外部文件和配置文件

發布時間:2020-06-24 23:04:11 來源:網絡 閱讀:2742 作者:小海哥2010 欄目:web開發

我們知道ThinkPHP有公共的函數文件和配置文件,位于Common目錄下,默認Common/function.php為公共的函數文 件,Conf/config.php為公共配置文件。好了,那么如何自定義其他的公共函數和配置文件呢。這里不得不講到兩個配置參數 LOAD_EXT_FILE和LOAD_EXT_CONFIG了。

1. LOAD_EXT_FILE配置的是自定義的函數文件,比如我想在Common目錄下再創建一個common.php文件,那么在config.php里 則可以配置LOAD_EXT_FILE=>'common',這樣common.php文件就會自動載入了。

Common/Conf/config.php
return array(          LOAD_EXT_FILE=>'common');

然后在common.php里寫一個方法,比如:

function T_dump($data){ 
    if (!empty($data)){ 
        echo '<pre>'; 
        var_dump($data); 
        echo '</pre>'; 
   }}

在控制器里調用T_dump(array(1,2,3));輸出:

array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
}
如果在Common下另建了另一個文件,test.php,在test.php文件里定義一個test函數
function(){echo 'test';}
那么控制器里直接調用就會報錯:Call to undefined function Home\Controller\test()
如果在config.php里加上test,‘LOAD_EXT_FILE’=>'common,test',則正常執行。

2.LOAD_EXT_CONFIG用于自定義配置文件,比如除了config.php你想引入一個額外的配置文件global.php
那么可以在config.php里配置:
LOAD_EXT_CONFIG=>'global'

那么你在Conf目錄下創建一個global.php文件,寫一個配置參數
return array('MONGO_DBNAME'=>'idacker');
然后C調用echo C('MONGO_DBNAME')
輸出:idacker
3.加載原理,其實自定義函數和配置文件的加載歸功于load_ext_file函數,
/**
 * 加載動態擴展文件
 * @var string $path 文件路徑
 * @return void
 */
function load_ext_file($path) {
    // 加載自定義外部文件
    if($files = C('LOAD_EXT_FILE')) {
        $files      =  explode(',',$files);
        foreach ($files as $file){
            $file   = $path.'Common/'.$file.'.php';
            if(is_file($file)) include $file;
        }
    }
    // 加載自定義的動態配置文件
    if($configs = C('LOAD_EXT_CONFIG')) {
        if(is_string($configs)) $configs =  explode(',',$configs);
        foreach ($configs as $key=>$config){
            $file   = is_file($config)? $config : $path.'Conf/'.$config.CONF_EXT;
            if(is_file($file)) {
                is_numeric($key)?C(load_config($file)):C($key,load_config($file));
            }
        }
    }
}
函數需要傳入一個$path目錄路徑,比如我們傳入COMMON_PATH,
那么上面兩步創建的common.php函數和global.php配置文件將被加載。


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

陆河县| 桦川县| 息烽县| 庆元县| 渑池县| 大连市| 西贡区| 定南县| 木里| 江山市| 开远市| 江西省| 潮安县| 两当县| 涞源县| 章丘市| 长汀县| 浏阳市| 钟祥市| 鄱阳县| 无棣县| 旌德县| 枞阳县| 阿拉善盟| 伊春市| 襄汾县| 牡丹江市| 宁夏| 中西区| 西林县| 修武县| 嫩江县| 西充县| 通河县| 盈江县| 芦溪县| 迁西县| 壤塘县| 呼伦贝尔市| 行唐县| 嘉禾县|