检查我的应用程序环境设置的更好方法?

时间:2014-09-01 12:38:54

标签: php

我正在构建一个应用程序,我不断调用ENVIRONMENT_SETTING。在我正在开发应用程序时,我将其作为define('ENVIRONMENT_SETTING', 'dev');

然后我在文件的顶部检查它是什么。我目前正在做if这样的陈述:

if (defined('ENVIRONMENT_SETTING'))
{
    if (ENVIRONMENT_SETTING == 'dev')
    {
        error_reporting(E_ALL);
    }
    elseif (ENVIRONMENT_SETTING == 'test' || ENVIRONMENT_SETTING == 'prod')
    {
       error_reporting(0);
    }
}
else
{
    die('Environment setting not set.');
}

这对我来说虽然似乎有点太多代码用于这么简单的检查。有更好的方法吗?

2 个答案:

答案 0 :(得分:2)

我个人会使用switch语句。它更加简洁。在你的情况下,我会做以下事情:

defined('ENVIRONMENT_SETTING') ? NULL : define('ENVIRONMENT_SETTING', 'dev');
if (defined('ENVIRONMENT_SETTING'))
{
    switch (ENVIRONMENT_SETTING)
    {
        case 'dev':
            error_reporting(E_ALL);

        break;

        case 'test':
        case 'prod':
            error_reporting(0);

        break;

        default:
            exit('Environment setting not set.');
    }
}

答案 1 :(得分:0)

如果您想保留die()部分内容,我认为此表单更容易快速查看您的脚本将以何种条件结束/死亡:

if (defined('ENVIRONMENT_SETTING') || die('Environment setting not set.')) {
  if (ENVIRONMENT_SETTING == 'dev')
    error_reporting(E_ALL);
  elseif (ENVIRONMENT_SETTING == 'test' || ENVIRONMENT_SETTING == 'prod')
    error_reporting(0);
}