在 Symfony 4 配置文件中引用嵌套参数
Referencing Nested Parameters in Symfony 4 Configuration Files
我希望能够将一个配置文件中定义的嵌套参数用于另一个示例
# config/config.yaml (my custom configuration file)
database:
driver: pdo_mysql
host: localhost
user: dev
password: dev
dbname: dev
在另一个配置文件中使用
# config/packages/doctrine.yaml
url: 'mysql://%database.user%:%database.password%@%database.host%:%database.port%/%database.dbname%'
这目前不起作用,因为我不确定如何引用配置包中的变量 (https://symfony.com/doc/current/configuration.html)
参数只是平面键值元素,不能嵌套。这是写在Symfony Documentation
您必须为每个参数定义一个单独的键。约定是使用点分隔名称空间。点并没有使它成为一个数组,而是使它更容易阅读。
database.driver: pdo_mysql
database.host: localhost
database.user: dev
database.password: dev
database.dbname: dev
然后完全按照您想要的方式访问参数:
url: 'mysql://%database.user%:%database.password%@%database.host%:%database.port%/%database.dbname%'
我希望能够将一个配置文件中定义的嵌套参数用于另一个示例
# config/config.yaml (my custom configuration file)
database:
driver: pdo_mysql
host: localhost
user: dev
password: dev
dbname: dev
在另一个配置文件中使用
# config/packages/doctrine.yaml
url: 'mysql://%database.user%:%database.password%@%database.host%:%database.port%/%database.dbname%'
这目前不起作用,因为我不确定如何引用配置包中的变量 (https://symfony.com/doc/current/configuration.html)
参数只是平面键值元素,不能嵌套。这是写在Symfony Documentation
您必须为每个参数定义一个单独的键。约定是使用点分隔名称空间。点并没有使它成为一个数组,而是使它更容易阅读。
database.driver: pdo_mysql
database.host: localhost
database.user: dev
database.password: dev
database.dbname: dev
然后完全按照您想要的方式访问参数:
url: 'mysql://%database.user%:%database.password%@%database.host%:%database.port%/%database.dbname%'