Регистрация Войти
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
Удалить папку с содержимым
Иногда бывает нужно быстро удалить папку со всеми входящими в ней папками и файлами. Чтобы удалить папку со всем содержимым, используйте следующий простой PHP скрипт:
<?
/**
* удалить директорию со всеми вложенными файлами
* @param $dir
* @return bool
*/
function delDir($dir) {
$files = array_diff(scandir($dir), ['.','..']);
foreach ($files as $file) {
(is_dir($dir.'/'.$file)) ? delDir($dir.'/'.$file) : unlink($dir.'/'.$file);
}
return rmdir($dir);
}
?>
Скрипт оформлен в виде функции. Если вы хотите использовать скрипт удаления содержимого папки в составе класса, то запишите так:
/**
* удалить директорию со всеми вложенными файлами
* @param $dir
* @return bool
*/
static function delDir($dir) {
$files = array_diff(scandir($dir), ['.','..']);
foreach ($files as $file) {
(is_dir($dir.'/'.$file)) ? self::delDir($dir.'/'.$file) : unlink($dir.'/'.$file);
}
return rmdir($dir);
}
Если Вы заранее не знаете, какие права у файла и можно ли его удалить, то перед удалением добавьте команду установки прав:
chmod( $dir.'/'.$file, 0777 );
Также можно удалить папку со всеми файлами с помощью системного вызова:
exec("rm -rf /path/to/directory/*");
.
Прокомментировать/Отблагодарить