©
本文档使用
php.cn手册 发布
(PHP 4, PHP 5, PHP 7)
ftp_chdir — 在 FTP 服务器上改变当前目录
$ftp_stream
, string $directory
)将当前目录切换为指定的目录。
ftp_stream
FTP 连接的标识符。
directory
目标目录。
成功时返回 TRUE
, 或者在失败时返回 FALSE
。如果切换目录失败,PHP 还会发出一条警告。
Example #1 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 );
?>
[#1] info at swiftyexpress dot com [2008-11-26 13:12:32]
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.]
[#2] neil at 11 out of 10 [2008-04-16 05:58:05]
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;
}
}
?>