我试图从php shell_exec和echo%USERPROFILE%获取Windows上的用户配置文件路径。
dos命令本身可以正常工作:
C:\>echo %USERPROFILE%
C:\Users\username
但是从php它只返回'%USERPROFILE%':
echo shell_exec("echo %USERPROFILE%");
我也试过getenv(' USERPROFILE');但即使将phi.ini variables_order更改为" EGPCS"
,我也没有得到任何回报。答案 0 :(得分:0)
C:\Users\temp_000>php -r "var_dump(getenv('USERPROFILE'));" string(17) "C:\Users\temp_000" C:\Users\temp_000>php -r "var_dump($_ENV['USERPROFILE']);" string(17) "C:\Users\temp_000" C:\Users\temp_000>php <?php var_dump(shell_exec("echo %USERPROFILE%")); ^Z string(18) "C:\Users\temp_000 "
一切都适合我。我唯一能想到的是你在Linux上运行你的PHP脚本,但是你说你在Windows上,所以...不太确定。无论如何,只是想展示我测试的结果。