<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ## 概述 配置的加載、設置和獲取功能統一由\think\Config類完成。 ## 使用 ### 加載配置文件 ~~~ \think\Config::load('配置文件名'); ~~~ 配置文件一般位于`APP_PATH`目錄下面,如果需要加載其它位置的配置文件,需要使用完整路徑,例如: ~~~ \think\Config::load(APP_PATH.'config/config.php'); ~~~ 系統默認的配置定義格式是PHP返回數組的方式,例如: ~~~ return [ '配置參數1'=>'配置值', '配置參數1'=>'配置值', // ... 更多配置 ]; ~~~ 如果你定義格式是其他格式的話,可以使用parse方法來導入,例如: ~~~ \think\Config::parse(APP_PATH.'my_config.ini','ini'); \think\Config::parse(APP_PATH.'my_config.xml','xml'); ~~~ parse方法的第一個參數需要傳入完整的文件名或者配置內容。 如果不傳入第二個參數的話,系統會根據配置文件名自動識別配置類型,所以下面的寫法仍然是支持的: ~~~ \think\Config::parse('my_config.ini'); ~~~ parse方法除了支持讀取配置文件外,也支持直接傳入配置內容,例如: ~~~ $config = 'var1=val var2=val'; \think\Config::parse($config,'ini'); ~~~ 支持傳入配置文件內容的時候 第二個參數必須顯式指定。 標準的ini格式文件定義: ~~~ 配置參數1=配置值 配置參數2=配置值 ~~~ 標準的xml格式文件定義: ~~~ <config> <var1>val1</var1> <var2>val2</var2> </config> ~~~ 配置類采用驅動方式支持各種不同的配置文件類型,因此可以根據需要隨意擴展。 ### 設置配置參數 使用set方法動態設置參數,例如: ~~~ \think\Config::set('配置參數','配置值'); // 或者使用快捷方法 C('配置參數','配置值'); ~~~ 也可以批量設置,例如: ~~~ \think\Config::set(['配置參數1'=>'配置值','配置參數2'=>'配置值']); // 或者使用 C(['配置參數1'=>'配置值','配置參數2'=>'配置值']); ~~~ ## 二級配置 配置參數支持二級,例如,下面是一個二級配置的設置和讀取示例: ~~~ $config = [ 'user'=>['type'=>1,'name'=>'thinkphp'], 'db' =>['type'=>'mysql','user'=>'root','password'=>''], ]; // 設置配置參數 \think\Config::set($config); // 讀取二級配置參數 echo \think\Config::get('user.type'); // 或者 echo C('user.type'); ~~~ 系統不支持二級以上的配置參數讀取,需要手動分步驟讀取。 有作用域的情況下,仍然支持二級配置的操作。 如果采用其他格式的配置文件的話,二級配置定義方式如下(以ini和xml為例): ~~~ [user] type=1 name=thinkphp [db] type=mysql user=rot password='' ~~~ 標準的xml格式文件定義: ~~~ <config> <user> <type>1</type> <name>thinkphp</name> </user> <db> <type>mysql</type> <user>root</user> <password></password> </db> </config> ~~~ set方法也支持二級配置,例如: ~~~ \think\Config::set(['type'=>'file','prefix'=>'think'],'cache'); ~~~ ### 獨立配置文件 新版支持配置文件分離,只需要配置`extra_config_list`參數(在應用公共配置文件中)。 例如,不使用獨立配置文件的話,數據庫配置信息應該是在config.php中配置如下: ~~~ /* 數據庫設置 */ 'database' => [ // 數據庫類型 'type' => 'mysql', // 服務器地址 'hostname' => '127.0.0.1', // 數據庫名 'database' => 'thinkphp', // 數據庫用戶名 'username' => 'root', // 數據庫密碼 'password' => '', // 數據庫連接端口 'hostport' => '', // 數據庫連接參數 'params' => [], // 數據庫編碼默認采用utf8 'charset' => 'utf8', // 數據庫表前綴 'prefix' => '', // 數據庫調試模式 'debug' => false, ], ~~~ 如果需要使用獨立配置文件的話,則首先在config.php中添加配置: ~~~ 'extra_config_list' => ['database'], ~~~ 定義之后,數據庫配置就可以獨立使用`database.php`文件,配置內容如下: ~~~ /* 數據庫設置 */ return [ // 數據庫類型 'type' => 'mysql', // 服務器地址 'hostname' => '127.0.0.1', // 數據庫名 'database' => 'thinkphp', // 數據庫用戶名 'username' => 'root', // 數據庫密碼 'password' => '', // 數據庫連接端口 'hostport' => '', // 數據庫連接參數 'params' => [], // 數據庫編碼默認采用utf8 'charset' => 'utf8', // 數據庫表前綴 'prefix' => '', // 數據庫調試模式 'debug' => false, ], ~~~ 如果配置了`extra_config_list`參數,并同時在`config.php`和`database.php`文件中都配置的話,則`database.php`文件的配置會覆蓋`config.php`中的設置。 > 系統默認設置了兩個獨立配置文件,包括`database`和`route`。 ### 讀取配置參數 設置完配置參數后,就可以使用get方法讀取配置了,例如: ~~~ echo \think\Config::get('配置參數1'); ~~~ 系統為get方法定義了一個快捷函數C,以上可以簡化為: ~~~ echo C('配置參數1'); ~~~ 讀取所有的配置參數: ~~~ dump(\think\Config::get()); // 或者 dump(C()); ~~~ 或者你需要判斷是否存在某個設置參數: ~~~ \think\Config::has('配置參數2'); ~~~ ## 作用域 配置參數支持作用域的概念,默認情況下,所有參數都在同一個系統默認作用域下面。如果你的配置參數需要用于不同的項目或者相互隔離,那么就可以使用作用域功能,作用域的作用好比是配置參數的命名空間一樣。 ~~~ \think\Config::load('my_config.php','','user'); // 導入my_config.php中的配置參數,并納入user作用域 \think\Config::parse('my_config.ini','ini','test'); // 解析并導入my_config.ini 中的配置參數,讀入test作用域 \think\Config::set('user_type',1,'user'); // 設置user_type參數,并納入user作用域 \think\Config::set($config,'test'); // 批量設置配置參數,并納入test作用域 echo \Think\Config::get('user_type','user'); // 讀取user作用域的user_type配置參數 dump(\Think\Config::get('','user')); // 讀取user作用域下面的所有配置參數 dump(C('',null,'user')); // 同上 \think\Config::has('user_type','test'); // 判斷在test作用域下面是否存在user_type參數 ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看