ftp_cdup can only up to the parent and if you want test a directory that is not a child then you can't with ftp_cdup ;)
ftp_cdup
(PHP 4, PHP 5)
ftp_cdup — Changes to the parent directory
Description
bool ftp_cdup
( resource
$ftp_stream
)Changes to the parent directory.
Parameters
-
ftp_stream -
The link identifier of the FTP connection.
Return Values
Returns TRUE on success or FALSE on failure.
Examples
Example #1 ftp_cdup() example
<?php
// set up basic connection
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// change the current directory to html
ftp_chdir($conn_id, 'html');
echo ftp_pwd($conn_id); // /html
// return to the parent directory
if (ftp_cdup($conn_id)) {
echo "cdup successful\n";
} else {
echo "cdup not successful\n";
}
echo ftp_pwd($conn_id); // /
ftp_close($conn_id);
?>
See Also
- ftp_chdir() - Changes the current directory on a FTP server
- ftp_pwd() - Returns the current directory name
rowie at free dot fr ¶
4 years ago
Anonymous ¶
5 years ago
The below example doesn't seem to work on a windows based machine so I use this trick instead
<?php
$aPath = explode('/',ftp_pwd($conn_id));
$sHomeDir = str_repeat('../', count($aPath) - 1);
ftp_chdir($conn_id, $sHomeDir);
?>
tom p ¶
7 years ago
I used a recursive cdup function until i realised i could navigate to the user's home directory from any location using ~:
<? ftp_chdir($connid, "~"); ?>
rayfung at ioptional dot com ¶
4 years ago
i think ftp_cdup can make it more nice
function dirExists($ftp, $directory = '.') {
if (@ftp_chdir($ftp, $directory)) {
ftp_cdup($ftp);
return TRUE;
} return FALSE;
}
