PHP Unconference Europe 2015

ftp_chdir

(PHP 4, PHP 5)

ftp_chdirChanges the current directory on a FTP server

Description

bool ftp_chdir ( resource $ftp_stream , string $directory )

Changes the current directory to the specified one.

Parameters

ftp_stream

The link identifier of the FTP connection.

directory

The target directory.

Return Values

Returns TRUE on success or FALSE on failure. If changing directory fails, PHP will also throw a warning.

Examples

Example #1 ftp_chdir() 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); 

// check connection
if ((!$conn_id) || (!$login_result)) {
    die(
"FTP connection has failed !");
}

echo 
"Current directory: " ftp_pwd($conn_id) . "\n";

// try to change the directory to somedir
if (ftp_chdir($conn_id"somedir")) {
    echo 
"Current directory is now: " ftp_pwd($conn_id) . "\n";
} else { 
    echo 
"Couldn't change directory\n";
}

// close the connection
ftp_close($conn_id);
?>

See Also

add a note add a note

User Contributed Notes 2 notes

up
3
neil at 11 out of 10
6 years ago
Thanks to h3 at valleyfield dot net

Same function with some minor changes and comments added

FTP function checks if a directory exists

<?php
function ftp_is_dir( $dir ) {
    global
$ftpcon;
   
// get current directory
   
$original_directory = ftp_pwd( $ftpcon );
   
// test if you can change directory to $dir
    // suppress errors in case $dir is not a file or not a directory
   
if ( @ftp_chdir( $ftpcon, $dir ) ) {
       
// If it is a directory, then change the directory back to the original directory
       
ftp_chdir( $ftpcon, $original_directory );
        return
true;
    }
    else {
        return
false;
    }       
}
?>
up
0
info at swiftyexpress dot com
5 years ago
Works like the other functions in this page's notes, but this one doesn't make use of a global FTP connection, so it takes parameters like the other functions in the extension

<?php
function ftp_directory_exists($ftp, $dir)
{
   
// Get the current working directory
   
$origin = ftp_pwd($ftp);
   
   
// Attempt to change directory, suppress errors
   
if (@ftp_chdir($ftp, $dir))
    {
       
// If the directory exists, set back to origin
       
ftp_chdir($ftp, $origin);   
        return
true;
    }

   
// Directory does not exist
   
return false;
}
?>


[NOTE BY danbrown AT php DOT net: As the contributor mentions, the original function was noted here by (h3 AT valleyfield DOT net) on 13-JUL-2007.]
To Top