【发布时间】:2011-11-21 03:27:43
【问题描述】:
是否可以使用 YAML 配置文件配置 Silex 应用程序?我打赌是的,但它是如何正确完成的?比如我想根据环境使用不同的配置,比如config.dev.yml和config.prod.yml。
配置文件应包含应用程序本身和已注册扩展/服务的参数。
例子:
// Debug flag should be set in the config file
$app['debug'] = true;
// Extension options should also be set in config file
$app->register(new Silex\Extension\TwigExtension(), array(
'twig.path' => __DIR__.'/views',
'twig.class_path' => __DIR__.'/vendor/Twig/lib',
));
我是否必须自己解析 YAML 文件并相应地设置参数,还是有更“神奇”的方法来做到这一点?
【问题讨论】:
-
刚刚在 GitHub 上找到了这个扩展:github.com/tyaga/LoadConfigExtension/blob/master/…
-
这并没有在您的应用程序/容器上设置任何内容。它只是创建了一个
$app['config']服务。 -
好的,但它只是做了我正在寻找的......一种加载 yml 配置文件的方法。这里没有什么神奇的,但是很有效;)(使用这个扩展时要小心,它使用“旧”的 ExtensionInterface。这在新的 Silex 版本中有所改变)