PHP Conference Nagoya 2025

ftp_rmdir

(PHP 4, PHP 5, PHP 7, PHP 8)

ftp_rmdirEfface un dossier FTP

Description

ftp_rmdir(FTP\Connection $ftp, string $directory): bool

ftp_rmdir() efface le dossier directory.

Liste de paramètres

ftp

Une instance de FTP\Connection.

directory

Le dossier à effacer. Ce doit être soit un chemin absolu, soit un chemin relatif vers un dossier vide.

Valeurs de retour

Cette fonction retourne true en cas de succès ou false si une erreur survient.

Historique

Version Description
8.1.0 La paramètre ftp attend désormais une instance de FTP\Connection ; auparavant, une ressource était attendu.

Exemples

Exemple #1 Exemple avec ftp_rmdir()

<?php

$dir
= 'www/';

// Mise en place d'une connexion basique
$ftp = ftp_connect($ftp_server);

// Identification avec un nom d'utilisateur et un mot de passe
$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);

// Tentative d'effacement du dossier $dir
if (ftp_rmdir($ftp, $dir)) {
echo
"Le dossier $dir a été effacé avec succès\n";
} else {
echo
"Il y a eu un problème lors de l'effacement du dossier $dir\n";
}

ftp_close($ftp);

?>

Voir aussi

add a note

User Contributed Notes 2 notes

up
5
karl AT karlgroves.com
13 years ago
Please note that this function, like rmdir, requires that the directory be empty.
up
4
johan dot kerreneur at gmail dot com
4 years ago
ftp_rmdir() delete only empty folders...

if you want to delete the entire contents of a folder try its.

Exemple...

<?php
$ftp_server
= "YourIP";
$ftp_user_name = "YourUsername";
$ftp_user_pass = "YourPassword";

// Connection
echo "Connecting to $ftp_server";
$conn_id = ftp_connect($ftp_server);
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

//Enable PASV ( Note: must be done after ftp_login() )
ftp_pasv($conn_id, true);

// check connection
if((!$conn_id) || (!$login_result)){
die(
"FTP connection has failed !");
}
echo
"<br/>Login Ok.";

// Function to delete an entire folder
function ftp_rrmdir($conn_id, $directory){
$lists = ftp_mlsd($conn_id, $directory);
unset(
$lists[0]);
unset(
$lists[1]);

foreach(
$lists as $list){
$full = $directory . '/' . $list['name'];

if(
$list['type'] == 'dir'){
ftp_rrmdir($conn_id, $full);
}else{
ftp_delete($conn_id, $full);
}
}

ftp_rmdir($conn_id, $directory);
return
true;
}

//Now run ftp_rrmdir()
if(ftp_rrmdir($conn_id, 'YOUR/PATH/')){
echo =
"Folder deleted !";
}

//close
ftp_close($conn_id);

?>
To Top