我在windows中定义了自己的环境变量来保存文件夹路径。
示例:
IMG = C:\ xampp \ htdocs \ img
我试图以下列方式在php中获取IMG变量的值
var_dump(getenv('MLINK_IMAGES'))
但它只是转储bool(false)。但我能够访问预定义的环境变量
var_dump(getenv('Path'))
它给了我适当的价值。
所以它需要php.ini中的任何配置或我错误地访问它。
答案 0 :(得分:1)
最近我写了一个库来从环境变量中获取值并解析为PHP数据类型。该库可用于将环境变量解析为PHP数据类型(如转换为整数,浮点数,空值,布尔值),使用社区的贡献解析复杂的数据结构,如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"));
享受它。
答案 1 :(得分:0)
问题的措辞方式,你正在使用Windows环境变量。 Windows和Web服务器的环境变量不一样。
如上例所示,在PHP中存储环境变量:
putenv("IMG=C:\\xampp\\htdocs\\img");
在调试时查看所有环境变量的列表:
echo phpinfo();
最后,不要覆盖路径变量供自己使用。它由Web服务器使用。