function cdmoin(&$prev, $fd) { if (!isset($prev)) { $prev = my_getenv("PWD"); } chdir($prev); $temp = my_getenv("PWD"); majenv("PWD", $prev); $prev = $temp; majenv("OLDPWD", $temp); func_pwd("incase", $fd); }
function myinitenv() { global $MYENV; if (!isset($MYENV)) { $MYENV = array(); } $MYENV = $_SERVER; if (!key_exists("HOME", $MYENV)) { return 0; } else { if (!key_exists("PWD", $MYENV)) { majenv("PWD", $MYENV["HOME"]); chdir($MYENV["HOME"]); } } }
function func_cd($param, $fd) { static $prev; $nextdir = parse($param); if (isset($nextdir[1][1])) { if ($nextdir[1][1][0] == "~") { $nextdir[1][1] = preg_replace("/~/", my_getenv("HOME"), $nextdir[1][1]); } if ($nextdir[1][1] == "-") { cdmoin($prev, $fd); } else { if (!file_exists($nextdir[1][1])) { echo "cd: {$nextdir[1][1]} No such file or directory\n"; } else { if (!is_readable($nextdir[1][1])) { echo "cd: {$nextdirt[1][1]}: Permission denied\n"; } else { $prev = my_getenv("PWD"); majenv("OLDPWD", my_getenv("PWD")); chdir($nextdir[1][1]); majenv("PWD", getcwd()); } } } } else { func_cd("cd ~", $fd); } }