我使用微框架Silex,我需要在给定脚本内的运行时检测环境类型。这意味着,检测它是 dev , prod 还是暂存。
答案 0 :(得分:4)
我没有Silex的经验,但我总是使用环境变量。然后在您的应用程序中,您可以通过以下方式获取当前环境:
getenv('ENVIRONMENT')
答案 1 :(得分:3)
Silex本身没有环境,只有调试模式。为了知道您的应用程序是否处于调试模式,您有$app['debug']
变量。
说过没有什么可以阻止你创建自己的环境变量,让我们说$app['env']
(是非常原创......)。因此,无论您需要知道自己运行的是哪个环境,都可以使用$app['env']
变量。
为了初始化此变量并按照silex skeleton,您可以(在网络文件夹中,您的 DocumentRoot )index.php
,index_dev.php
,{ {1}}在调用index_stg.php
之前相应地设置$app['env']
。
或者您可以使用@WimMostmans解释的技术并使用真实的环境变量: - )