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

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # PHP 配置教程 > 原文: [https://zetcode.com/php/config/](https://zetcode.com/php/config/) PHP 配置教程顯示了如何在 PHP 中創建配置文件。 它使用`hassankhan/config`包。 `hassankhan/config`是一種輕量級的配置文件加載器,支持 PHP,INI,XML,JSON 和 YAML 文件。 如果使用 YAML 文件,則需要安裝`symfony/yaml`包。 ## 安裝 PHP 配置 首先,我們安裝必要的包。 ```php $ composer req hassankhan/config symfony/yaml ``` 我們使用 composer 安裝了兩個包。 `composer.json` ```php { "autoload": { "psr-4": { "App\\": "src/" } }, "require": { "hassankhan/config": "^2.0", "symfony/yaml": "^4.2" } } ``` 這是`composer.json`文件。 我們還啟用了自動加載功能。 ## PHP 配置 JSON 示例 在第一個示例中,我們從 JSON 文件讀取配置數據。 `config/db.json` ```php { "app": { "port": 3000 }, "db": { "host": "localhost", "port": 27017, "name": "ydb" } } ``` 我們在`config`目錄中有`db.json`。 `read_json_cfg.php` ```php <?php use Noodlehaus\Config; require('vendor/autoload.php'); // $conf = Config::load('config/db.json'); $conf = new Config('config/db.json'); echo $conf->get('app.port') . "\n"; echo $conf->get('db.host') . "\n"; echo $conf->get('db.port') . "\n"; echo $conf->get('db.name') . "\n"; ``` 我們使用`Config::load()`或`Config()`加載配置文件。 使用`get()`方法檢索這些值。 點字符用于遍歷屬性的層次結構。 ```php $ php read_json_cfg.php 3000 localhost 27017 ydb ``` 這是輸出。 ## PHP YAML 示例 在第二個示例中,我們從 YAML 文件讀取配置數據。 `config/db.yaml` ```php app: port: 3000 db: host: localhost port: 27017 name: ydb ``` 這是`db.yaml`文件。 `read_yaml_cfg.php` ```php <?php use Noodlehaus\Config; use Noodlehaus\Parser\Yaml; require('vendor/autoload.php'); $conf = new Config('config/db.yaml', new Yaml); echo $conf->get('app.port') . "\n"; echo $conf->get('db.host') . "\n"; echo $conf->get('db.port') . "\n"; echo $conf->get('db.name') . "\n"; ``` 該示例從`db.yaml`文件讀取配置文件。 ```php $conf = new Config('config/db.yaml', new Yaml); ``` 在第二個參數中,我們提供配置解析器。 ```php $ php read_yaml_cfg.php 3000 localhost 27017 ydb ``` This is the output. ## 合并配置文件 `merge()`方法對配置文件進行分組。 `config/db.yaml` ```php app: port: 3000 db: host: localhost port: 27017 name: ydb ``` 這是第一個配置文件。 `config/app.yaml` ```php version: 2.0-dev ``` 這是第二個配置文件。 `merging.php` ```php <?php use Noodlehaus\Config; use Noodlehaus\Parser\Yaml; require('vendor/autoload.php'); $conf = Config::load('config/db.yaml', new Yaml); $conf2 = Config::load('config/app.yaml', new Yaml); $conf->merge($conf2); echo $conf->get('db.port') . "\n"; echo $conf->get('db.name') . "\n"; echo $conf->get('version') . "\n"; ``` 在示例中,我們合并了兩個配置文件。 我們可以使用一個對象訪問兩個文件的屬性。 ## 使用`AbstractConfig`進行代碼配置 我們可以使用`AbstractConfig`在代碼中指定配置詳細信息。 `src/Config/AbstractConfig.php` ```php <?php namespace App\Config; use Noodlehaus\AbstractConfig; class AppConfig extends AbstractConfig { protected function getDefaults() { return [ 'host' => 'localhost', 'port' => 80, 'servers' => [ 'host1', 'host2', 'host3' ] ]; } } ``` 該配置在`AbstractConfig`的`getDefaults()`文件中指定。 `code_config.php` ```php <?php require('vendor/autoload.php'); use Noodlehaus\Config; use App\Config\AppConfig; $conf = new AppConfig([]); echo $conf->get('host') . "\n"; echo $conf->get('port') . "\n"; echo $conf->get('servers')[0] . "\n"; ``` 該示例從代碼讀取配置。 在本教程中,我們展示了如何使用`hassankhan/config`包讀取 PHP 中的配置文件。 列出[所有 PHP](/all/#php) 教程。
                  <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>

                              哎呀哎呀视频在线观看