我无法找到使用CGI(suPHP)获取用户主目录的方法(例如 / home / jack ;无论bash指向哪个〜)。 $ _ENV数组为空,getenv('HOME')不返回任何内容。
我想这样做的原因是,由于缺乏配置,否则,我想找到我的应用程序在 /home/user/.myappnamehere 中使用的变量文件,因为大多数Linux应用程序都这样做
我已经建立了一些东西,但它并不是最好的;虽然它有效,但它假设了很多系统(例如/ etc / passwd的存在)
$usr = get_current_user();
$passwd = file('/etc/passwd');
$var = false;
foreach ($passwd as $line) {
if (strstr($line, $usr) !== false) {
$parts = explode(':', $line);
$var = realpath($parts[5].'/.report');
break;
}
}
答案 0 :(得分:6)
我想你想要结果: http://us.php.net/manual/en/function.getmyuid.php或 http://us.php.net/manual/en/function.posix-getuid.php已发送给 http://us.php.net/manual/en/function.posix-getpwuid.php
答案 1 :(得分:4)
如果safemode
已停用,请尝试使用此
$homedir = `cd ~ && pwd`;