使用PHP删除FTP服务器中包含文件的文件夹

时间:2020-01-21 13:01:19

标签: php ftp

我正在尝试使用PHP删除ftp服务器的文件夹和文件,但是当文件夹中包含文件时,我无法删除该文件夹及其所有内容。我正在使用ftp_rmdir函数删除文件夹。我在下面留下了代码。

//Connect
echo "Connecting to ".$ftp_host." via FTP...";


$conn = ftp_ssl_connect($ftp_host);
$login = ftp_login($conn, $ftp_user, $ftp_password);

//
//Enable PASV ( Note: must be done after ftp_login() )
//
$mode = ftp_pasv($conn, TRUE);

//Login OK ?
if ((!$conn) || (!$login) || (!$mode))
{
   die("FTP connection has failed !");
}
echo "<br />Login Ok.<br />";

//
//Now run ftp_nlist()
//
$file_list = ftp_nlist($conn, "/clients/john/files");

foreach ($file_list as $file)
{
    echo "<br>".$file;

    if (is_dir($file))
    {
        ftp_delete($conn,$file);
    }
    else
    {
        ftp_rmdir($conn,$file);
    }


}

//close
ftp_close($conn);

1 个答案:

答案 0 :(得分:0)

https://www.php.net/manual/en/function.ftp-rmdir

要删除的目录。这必须是空目录的绝对路径或相对路径。

也许您可以通过ssh连接到服务器?