ftp_chdir()
(PHP 4, PHP 5, PHP 7)
在 FTP 服务器上改变当前目录
说明
ftp_chdir(resource $ftp_stream,string $directory): bool
将当前目录切换为指定的目录。
参数
- $ftp_stream
FTP 连接的标识符。
- $directory
目标目录。
返回值
成功时返回TRUE
,或者在失败时返回FALSE
。如果切换目录失败,PHP 还会发出一条警告。
范例
ftp_chdir()例子
<?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); ?>
参见
ftp_cdup()
切换到当前目录的父目录ftp_pwd()
返回当前目录名
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; } } ?>
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.]