<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>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ### 什么是Yaconf ? Yaconf 它使用單獨的一個配置目錄(在`yaconf.directory`指定), 不和代碼在一起,它在PHP啟動的時候,處理所有的要處理的配置, 然后這些配置就會常駐內存,隨著PHP的生命周期存亡,避免了每次請求的時候解析配置文件,配置目錄和代碼分離以后,可以借助一個配置管理后臺,來實現配置的統一化管理.配置如果有變化, 它會reload,不需要重啟(檢測的頻率由`yaconf.check_delay`控制),它支持豐富的配置類型,包括字符串、數組,、分節,、分節繼承,并且還可以在配置中直接寫PHP的常量和環境變量等. ### 為什么要用 Yaconf ? 一般我們項目中是用PHP文件做配置的, 一個config目錄下可能有十幾個甚至數十個.php配置文件, 里面都是各種各樣的array, 這就導致配置文件的解析耗費了很大的性能。 ### 安裝 #### 1、Windows 擴展下載地址:[http://pecl.php.net/package/yaconf](http://pecl.php.net/package/yaconf) 選擇一個最新版本:[http://pecl.php.net/package/yaconf/1.0.7/windows](http://pecl.php.net/package/yaconf/1.0.7/windows) 根據本地環境學則一個版本 ![](https://img.kancloud.cn/23/de/23debd359f2653ccfd951b33e544436c_738x243.png) 復制 解壓后的`php_yaconf.dll?`文件到?`D:\\phpStudy\\PHPTutorial\\php\\php-7.0.12-nts\\ext`目錄 修改php.ini 配置文件,添加以下擴展 ~~~php extension=php_yaconf.dll   ~~~ 配置yaconf ~~~php [yaconf] yaconf.directory="D:\phpStudy\Yaconf" // 配置文件的目錄位置 yaconf.check_delay=60 // ?配置文件的更新時間   ~~~ 重啟所有服務,使用php探針,查看配置是否安裝成功 ![](https://img.kancloud.cn/3a/f9/3af9061a3ee44861ce662f33ea0c2fa4_959x140.png) 以上表示安裝成功了 #### 2、Linux? ~~~ts git clone https://github.com/laruence/yaconf.git cd yaconf/ phpize ./configure --with-php-config=/usr/local/php-7.2/bin/php-config sudo vim /usr/local/php-7.2/etc/php.ini ## 添加 extension=yaconf.so sudo systemctl restart php-fpm.service ~~~ ## 單獨使用 在目錄?`D:\\phpStudy\\Yaconf`下新增配置文件`redis.ini`,內容如下 ~~~ts [base] parent="yaconf" children="NULL" [children:base] children="set"   ~~~ 重啟服務器,新建`index.php`文件測試 ~~~php <?php $redis = \Yaconf::get('redis'); print_r($redis);   ~~~ 打印內容 ~~~ts $ php index.php Hello WorldArray ( [base] => Array ( [parent] => yaconf [children] => NULL ) [children] => Array ( [parent] => yaconf [children] => set ) ) ~~~ ## 框架集成使用(ThinkPHP6) `php.ini`? ~~~ [yaconf] yaconf.directory="/home/www/web/cl_new_pay_dev" yaconf.check_delay=60 ~~~ > TP官方:https://doc.thinkphp.cn/v6_1/peizhi.html 在項目更目錄新建`thinkphp.ini` 添加以下內容( cl\_new\_pay\_dev 目錄下) ~~~ts name="yaconf" year=2015 features[]="fast" features.1="light" features.plus="zero-copy" features.constant=PHP_VERSION features.env=${HOME} ~~~ 由于默認Yaconf使用多個配置文件,建議在項目中使用`setYaconf`方法指定`Yaconf`使用的獨立配置文件,例如 ~~~ // 建議在應用的公共函數文件中進行設置 common.php think\facade\Config::setYaconf('thinkphp'); ~~~ ?(1)使用助手函數 ~~~ var_dump(Config::yaconf('name')); var_dump(Config::yaconf('year')); var_dump(Config::yaconf('features')['plus']); var_dump(Config::yaconf('features.plus')); var_dump(Config::yaconf('features.constant')); var_dump(Config::yaconf('features.env')); ~~~ 打印結果 ~~~ string(6) "yaconf" string(4) "2015" string(9) "zero-copy" string(9) "zero-copy" string(6) "7.2.12" string(0) "" ~~~ (2)不適用助手函數,直接訪問 ~~~ print_r("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); print_r(\Yaconf::get("cpay")); print_r(\Yaconf::get("cpay.common")); print_r(\Yaconf::get("cpay.database")); print_r(\Yaconf::get("cpay.redis")); print_r(\Yaconf::get("cpay.redis.host")); ~~~ 打印結果 ~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Array ( [common] => Array ( [app_name] => 二萬OCR [app_host] => www.cnblogs.com [app_debug] => 1 ) [database] => Array ( [app_name] => 二萬OCR [app_host] => www.cnblogs.com [app_debug] => 1 [hostname] => 127.0.0.1 [database] => cl_cpay [username] => root [password] => wang123456, ) [redis] => Array ( [app_name] => 點點支付 [app_host] => www.cnblogs.com [app_debug] => 1 [host] => 192.168.1.1 [port] => 6379 [auth] => 123456 [prefix] => TII ) ) Array ( [app_name] => 開源技術小棧 [app_host] => www.tinywan.com [app_debug] => 1 ) Array ( [app_name] => 開源技術小棧 [app_host] => www.tinywan.com [app_debug] => 1 [hostname] => 127.0.0.1 [database] => cl_cpay [username] => root [password] => wang123456, ) Array ( [app_name] => 開源技術小棧 [app_host] => www.tinywan.com [app_debug] => 1 [host] => 192.168.1.1 [port] => 6379 [auth] => 123456 [prefix] => TII ) 192.168.1.1 ~~~ `capy.ini` 配置文件 ~~~ [common] app_name = "開源技術小棧" app_host = "www.tinywan.com" app_debug= true [database:common] hostname = "127.0.0.1" database = "cl_cpay" username = "root" password = "wang123456", [redis:common] host = "192.168.1.1" port = 6379 auth = 123456 prefix = "TII" ~~~
                  <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>

                              哎呀哎呀视频在线观看