donglie7778 2014-09-01 12:38
浏览 12
已采纳

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

I am building an application and I have constant called ENVIRONMENT_SETTING. As I am currently developing the application I have it as define('ENVIRONMENT_SETTING', 'dev');

Then I am checking at the top of the file what it is. I am currently doing if statements like so:

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.');
}

This to me though seems like a bit too much code for such a simple check. Is there a better way to do this?

  • 写回答

2条回答 默认 最新

  • duanbicheng3345 2014-09-01 12:42
    关注

    Well I personally would use a switch statement. It's much more concise. In your case I would do the following:

    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条)

报告相同问题?

悬赏问题

  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么