What is the best form for get the home directory on Windows and Linux from a PHP Script?
I need something like: 开发者_JAVA百科 get_home_user($username)
This is how I did it:
class goDirAlias
{
private function home_dir()
{
// Try to find out the home directory of the user running this script
if(function_exists("posix_getpwnam"))
{
// using posix
$user_info = posix_getpwnam(goDirAlias::whoami());
$home_dir = $user_info['dir']."/";
} else
{
// Looking for Windows environment variables
$home_dir = getenv('HOMEDRIVE').getenv('HOMEPATH').'\\';
if($home_dir == "\\")
{
// Looking for *nix environment variables
$home_dir = getenv('HOME')."/";
}
}
return $home_dir;
}
private function whoami()
{
// Try to find out the username of the user running the script
if(function_exists('posix_getpwuid'))
{
// using posix
$user_info = posix_getpwuid(posix_geteuid());
$running_user = $user_info['name'];
} else {
// Looking for Windows environment variables
$running_user = getenv('USERNAME');
if(empty($running_user))
{
// Running *nix whoami
$running_user = exec('whoami');
}
}
return $running_user;
}
}
You could try in Linux this.
function get_home_user($username)
{
$username=$_POST["username"];
if (!empty($username))
{ if(exec ("test (home/$username)"))
return true;
}
return false;
}
精彩评论