使用 YAML 存储应用程序配置
YAML 提供了一种存储结构化数据的方法。数据可以是一组简单的名称 - 值对,也可以是复杂的分层数据,其值甚至是数组。
考虑以下 YAML 文件:
database:
driver: mysql
host: database.mydomain.com
port: 3306
db_name: sample_db
user: myuser
password: Passw0rd
debug: true
country: us
比方说,它被保存为 config.yaml
。然后,要在 PHP 中读取此文件,可以使用以下代码:
$config = yaml_parse_file('config.yaml');
print_r($config);
print_r
将产生以下输出:
Array
(
[database] => Array
(
[driver] => mysql
[host] => database.mydomain.com
[port] => 3306
[db_name] => sample_db
[user] => myuser
[password] => Passw0rd
)
[debug] => 1
[country] => us
)
现在可以通过简单地使用数组元素来使用配置参数:
$dbConfig = $config['database'];
$connectString = $dbConfig['driver']
. ":host={$dbConfig['host']}"
. ":port={$dbConfig['port']}"
. ":dbname={$dbConfig['db_name']}"
. ":user={$dbConfig['user']}"
. ":password={$dbConfig['password']}";
$dbConnection = new \PDO($connectString, $dbConfig['user'], $dbConfig['password']);