服务容器外部参数如何设置
编辑该页面警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 3.0,不再维护。
读这个页面的更新版本Symfob娱乐下载ony 6.2(当前的稳定版本)。
服务容器外部参数如何设置
在这一章Symfony的配置(和ob娱乐下载环境),您学习了如何管理你的应用程序配置。有时,它可能有益于你的应用程序存储某些凭证以外的项目代码。数据库配置就是这样一个例子。Symfony的灵活性服务容器允许你轻松地做到ob娱乐下载这一点。
环境变量
ob娱乐下载Symfony会抓住任何环境变量前缀ob娱乐下载SYMFONY__
并把它作为一个参数在服务容器。一些转换应用于生成的参数名称:
ob娱乐下载SYMFONY__
前缀删除;- 参数名是小写;
- 双下划线替换为一段,一段时间不是一个有效的字符在一个环境变量名称。
例如,如果你使用Apache,环境变量可以使用以下设置虚拟主机
配置:
1 2 3 4 5 6 7 8 9 10 11 12
< VirtualHost *: 80 >ServerNameob娱乐下载DocumentRoot“symfony_2ob娱乐下载_app / web /道路/”DirectoryIndex索引。php index . htmlSetEnvob娱乐下载SYMFONY__DATABASE__USER用户SetEnvob娱乐下载SYMFONY__DATABASE__PASSWORD秘密<目录“/ symfony_2_app /ob娱乐下载 web /道路/”>AllowOverride所有允许从所有< /目录>< /虚拟主机>
请注意
上面的例子是一个Apache配置,使用SetEnv指令。然而,这将适用于任何web服务器支持的设置环境变量。
同时,为了使你的控制台(不使用Apache)工作,你必须导出这些shell变量。在Unix系统中,您可以运行下面的:
1 2
美元出口ob娱乐下载SYMFONY__DATABASE__USER =用户$出口ob娱乐下载SYMFONY__DATABASE__PASSWORD =秘密
现在您已经宣布一个环境变量,它将出现在PHP$ _SERVER
全局变量。ob娱乐下载Symfony然后自动设置$ _SERVER
变量前缀ob娱乐下载SYMFONY__
服务容器作为参数。
现在,您可以参考这些参数你需要他们的地方。
- YAML
- XML
- PHP
1 2 3 4 5 6
原则:dbal:司机:pdo_mysqldbname:ob娱乐下载symfony_project用户:“% database.user %”密码:“% database.password %”
其他配置
的进口
指令可用于引入参数存储在其他地方。导入一个PHP文件给你的需要灵活地添加任何容器。以下进口文件命名parameters.php
。
- YAML
- XML
- PHP
1 2 3
# app / config / config.yml进口:- - - - - -{资源:parameters.php}
请注意
一个资源文件可以许多类型之一。PHP XML、YAML INI和关闭资源都是支持的进口
指令。
在parameters.php
服务容器,告诉您希望设置的参数。这是有用,当重要的配置是一个非标准格式。下面的例子包括一个Drupal数据库配置在Symfony服务容器。ob娱乐下载
1 2 3
/ / app / config / parameters.phpinclude_once(' /道路/ / drupal /网站/违约/ settings.php”);美元容器- >setParameter (“drupal.database.url”,美元db_url);