我找不到使用 CGI (suPHP) 在 PHP 中获取用户主目录(例如 /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;
}
}
最佳答案
我认为您想要以下任一结果: 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
关于php - 从 PHP 读取用户主目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2173518/