无法访问php中用户定义的环境变量


Unable to access user defined environment variables in php

我已经在windows中定义了自己的环境变量来保存文件夹路径。

的例子:

IMG = C:'xampp'htdocs' IMG

我试图获得IMG变量的值在php在以下方式

var_dump(getenv('MLINK_IMAGES'))

但是它只是转储bool(false)。但是我可以访问预定义的环境变量

var_dump(getenv('Path'))

它给了我合适的值。

它是否需要在php.ini中进行任何配置,或者我以错误的方式访问它

最近我编写了一个库,用于从环境变量中获取值并解析为PHP数据类型。该库可用于将环境变量解析为PHP数据类型(如转换为integer, float, null, boolean),解析JSON字符串等复杂数据结构,以及社区的贡献。

该库可在此获得:https://github.com/jpcercal/environment

设置你的环境变量,如果你使用的是web服务器(重启你的Apache服务器或PHP内置服务器或Nginx),否则如果你运行的是cli应用程序,关闭并重新打开终端程序,以加载你的新环境变量到操作系统

和获取值从环境变量与PHP使用我的库(独立于环境CLI, Apache, Nginx, PHP内置服务器和更多):

<?php
// ...
require "vendor/autoload.php";
// ...
var_dump(Cekurte'Environment'Environment::get("YOUR_ENV_VARIABLE_NAME"));

享受它。

问题的措辞方式,您正在使用windows环境变量。Windows和web服务器的环境变量不一样。

在PHP中存储一个环境变量,如下所示:

putenv("IMG=C:''xampp''htdocs''img");

查看调试时所有环境变量的列表:

echo phpinfo();

最后,不要为自己的使用而覆盖path变量。