在windows8上我用php 5.3得到了这个:
echo sys_get_temp_dir();
输出:
C:\Windows
我不明白什么或者它是一个错误?
的 UPD 的
尝试$_ENV
:
<?php
var_export($_ENV);
输出:
array ( )
检查upload_tmp_dir
:
<?php
echo ini_get('upload_tmp_dir');
输出:
C:\Windows\Temp
答案 0 :(得分:2)
查看PHP源代码,它将调用GetTempPath来确定临时目录。根据文档,Windows目录C:\ Windows是最后一个fallthrough选项。您应该检查PHP或其主机进程正在运行的用户配置文件,可能需要一些修复环境。
答案 1 :(得分:0)
与此PHP Bug相关(仅限CGI上下文?)。
我遇到了同样的问题,解决方案是在apache配置文件(httpd.conf)中更改apache配置以将 TEMP 系统环境变量公开给PHP this directive:< / p>
PassEnv TEMP
不要忘记激活 env_module ,通常取消注释行&#34; LoadModule env_module modules / mod_env.so&#34;。
此解决方案修复了这些PHP函数的结果: sys_get_temp_dir(), tempnam()。