区分开发环境和生产环境的方法

🐵 Laravel的方法
 
在根目录下创建“.env”文件,文件内容如下:
 
APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:********************************************
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=https://laravel.com
 
开发者可以获取APP_ENV的值来判断是开发环境还是生产环境。





🐵 配置php.ini

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;; /php/php.ini ;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; 环境变量
[env]

; 当前运行环境,可选值:development=开发环境|production=生产环境
APP_ENV = development

<?php
declare(strict_types=1);

// 获取php.ini文件里的APP_ENV配置项值,判断是开发环境(development)还是生产环境(production)
if (get_cfg_var('APP_ENV') === 'development') {
    echo '当前环境为开发环境(development)' . PHP_EOL;

    // 开发环境建议报告所有错误
    ini_set('display_errors', 'On');
    ini_set('error_reporting', E_ALL);

    // 开发环境禁用缓存(每次都刷新)
    function_exists('opcache_reset') && opcache_reset();
} else {
    echo '当前环境为生产环境(production)' . PHP_EOL;

    // 生产环境必须屏蔽所有错误
    ini_set('display_errors', 'Off');
    ini_set('error_reporting', E_ALL & ~E_DEPRECATED & ~E_STRICT);
}


//========== 总结 ==========//
// 1、从最佳实践和安全性角度出发,除非能明确知道当前环境为开发环境,否则应该视当前环境为生产环境。

Copyright © 2024 码农人生. All Rights Reserved