首页后端开发PHP关于PHP框架中.env文件的加载过程

关于PHP框架中.env文件的加载过程

时间2024-02-02 02:01:02发布访客分类PHP浏览554
导读:收集整理的这篇文章主要介绍了关于PHP框架中.env文件的加载过程,觉得挺不错的,现在分享给大家,也给大家做个参考。现在很多框架使用根目录的.env文件来配置环境变量,php本身是不会去解析这个文件的,需要使用php代码读取和解析这个文件放...
收集整理的这篇文章主要介绍了关于PHP框架中.env文件的加载过程,觉得挺不错的,现在分享给大家,也给大家做个参考。

现在很多框架使用根目录的.env文件来配置环境变量,php本身是不会去解析这个文件的,需要使用php代码读取和解析这个文件放入环境变量中。

例如查看thinkphp中.env文件的加载过程 , 使用下面这个strace命令查看FPM进程stat文件状态的过程。

strace $(pidof 'php-fpm'|sed 's/\([0-9]*\)/-p \1/g') -e stat -s 1024

返回的这条,就是在查看.env文件是否存在。

[pid 11692] stat("/data1/mailLOG/public/phpdev/xxx/xxx/.env", 0x7fff6ba5f9f0) = -1 ENOENT (No such file or directory)

处理的代码是这几句

if (is_file(ROOT_PATH . '.env')) {
        $env = parse_ini_file(ROOT_PATH . '.env', true);
        foreach ($env as $key =>
 $val) {
            $name = ENV_PREFIX . strtoupPEr($key);
        if (is_array($val)) {
                foreach ($val as $k =>
 $v) {
                    $ITem = $name . '_' . strtoupper($k);
                    putenv("$item=$v");
            }
        }
 else {
                putenv("$name=$val");
        }
    }
}
    

更多相关php知识,请访问php教程!

以上就是关于PHP框架中.env文件的加载过程的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 关于PHP框架中.env文件的加载过程
本文地址: https://pptw.com/jishu/596213.html
关于PHP目录操作总结 PHP的一些安全设置(优化)

游客 回复需填写必要信息