php – 如何在Symfony4结构的参数文件中检索我的环境变量?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php – 如何在Symfony4结构的参数文件中检索我的环境变量?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2028字,纯文字阅读大概需要3分钟。
内容图文
![php – 如何在Symfony4结构的参数文件中检索我的环境变量?](/upload/InfoBanner/zyjiaocheng/698/b71758678a5b45b3a901cb0b4f40e61f.jpg)
我使用Symfony Flex进行了新的Symfony安装,新的骨架属于下一个Symfony 4目录结构.
我添加并配置了第一个第三方软件包:HWIOAuthBundle.此软件包用于通过Twitter使用两个秘密信息进行连接.
我在config / packages / hwi_oauth.yaml文件中声明了我的consumer_id和consumer_secret.
hwi_oauth:
firewall_names: [secured_area]
resource_owners:
twitter:
type: twitter
client_id: XXXXXMyIdXXXXX
client_secret: XXXXXMyTopSecretKeyXXXXX
我的申请工作正常.但我无法在github上提交我的秘密!
我想要一个像这样的hwi_oauth.yaml文件:
hwi_oauth:
firewall_names: [secured_area]
resource_owners:
twitter:
type: twitter
client_id: '%twitter_consumer_id%'
client_secret: '%twitter_consumer_secret%'
我阅读了有关新DotEnv软件包的Symfony4 best practices.
Using environment variables, while far from being perfect, have many benefits over what we currently do. Environment variables are a more “standard” way of managing settings that depend on the environment (no need to manage a parameters.yml.dist for instance).
正如最佳实践中所建议的那样,我将这两行附加到.env文件中:
TWITTER_CONSUMER_ID=XXXXXMyIdXXXXX
TWITTER_CONSUMER_SECRET=XXXXXMyTopSecretKeyXXXXX
但是我遇到了这个错误:
You have requested a non-existent parameter “twitter_consumer_id”.
我尝试使用%kernel.twitter_consumer_id%,%env.twitter_consumer_id%,%env(TWITTER_CONSUMER_ID)%,但没有成功.
最后一个测试是返回此错误消息:
An exception has been thrown during the rendering of a template (“Environment variable not found: “TWITTER_CONSUMER_ID”.”).
如何在hwi_oauth.yaml等参数文件中检索ENV变量?
解决方法:
您需要在引导过程中加载.env文件,以便使这些环境变量可用:
(new DotEnv())->load(__DIR__ . '/../.env');
您应该计划在开发,登台和生产中将密钥放在环境变量中.但是,你如何做到这一点取决于.在开发和暂存中,也许你使用.env文件,而在生产中你使用Apache注入.
就个人而言,我总是使用.env文件,并在我的存储库中保留一个空白文件.这样,它的部署非常简单,并且没有任何特殊情况.
如果您只想在特定环境中使用.env文件,则可以执行以下操作:
if (in_array(getenv('APP_ENV'), [ 'dev', 'test' ])) {
(new DotEnv())->load(__DIR__ . '/../.env');
}
内容总结
以上是互联网集市为您收集整理的php – 如何在Symfony4结构的参数文件中检索我的环境变量?全部内容,希望文章能够帮你解决php – 如何在Symfony4结构的参数文件中检索我的环境变量?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。