Как удалить папку на сервере php
"удалить папку php" или "Как удалить папку на сервере php". Функция для удаления папок со всем содержимым! И просто очистим папку php от других папок и файлов!
Подробно об удалении папок php.
- Функция для удаления папки в php.
- Удалить папки php
- php удалить всё содержание папки
- php удалить папку со всем содержимым
Функция для удаления папки в php.
В php есть отдельная функция, которая удаляет директорию(папку), поэтому ... давайте начнем с синтаксиса :
Синтаксис функции для удаления папки в php:
bool rmdir ( string dirname [, resource context] )
Разберем приведенный синтаксис.
возвращаемое значение - bool.
rmdir - название функции
string - строка
dirname - название папки или путь до папки()рекомендую использовать путь_до_папки_на_сервере
resource context - посмотрите в интернете.
Упрощенный синтаксис функции для удаления папки в php:
rmdir ( dirname );
Пример использования функции для удаления папки
Рекомендую использовать функцию для удаления папки вот в такой связке...
Где is_dir - проверяет - существует ли данная папка по указанному пути "path"(как я уже говорил ранее - рекомендую использовать путь на сервере до файла).
<?
if (is_dir('path'))
{
rmdir('path');
}
?>
Для чего нужна такая конструкция - если вы напишите вот так:
<?
rmdir('path');
?>
То ...
Если папка существует - папка будет удалена.
Если папка не существует вернет ошибку типа E_WARNING
Удалить папки php
Давайте немного подумаем над формулировкой:
Удалить папки php...
В данной строке ... непонятно... будем ли удалять саму папку ... или же очищенная папка останется?
Поэтому... первая функция это:
Удаляем папки внутри папки.
Т.е. по другому можно сказать, что мы очистим папку отт других папок, а очищенная папка останется на сервер.
<?
// модифицированная функция scandir с удалением виртуальных директорий
function scan_dir($dir)
{
$list = scandir($dir);//scandir
unset($list[0],$list[1]); //unset
return array_values($list); //array_values
}
// функция очищения папки
function clear_dir($dir)
{
$list = scan_dir($dir);
foreach ($list as $file) // foreach
{
if (is_dir($dir.$file))
{
clear_dir($dir.$file.'/');
rmdir($dir.$file);
}
else
{
unlink($dir.$file); //unlink
}
}
}
// пример использования
clear_dir('home/www/очищаемая_папка/');
?>
Указанная очищаемая папка удалена не будет. Все папки и файлы, которые внутри будут удаленны.
Php удалить папку со всем содержимым
Далее рассмотрим код, который удалит все папки и файлы и саму папку указанную в $dir.
Это почти аналог предыдущей функции, только мы добавили проверку... на существование удаляемой папки.
Поскольку после удаления папки ...папка существовать не будет и после перезагрузки повыскакивают "E_WARNING", то нужна проверка :
+ Проверим на пустоту саму очищаемую папку... после того, как она окажется пустой... удаляем и эту папку...
{
rmdir( $dir );
}
Код удаления папки со всем содержимым!
<?
$dir = __DIR__ .'/1/'; //__DIR__
if(is_dir($dir))
{
function scan_dir($dir)
{
$list = scandir($dir);
unset($list[0],$list[1]);
return array_values($list);
}
// функция очищения папки
function clear_dir($dir)
{
$list = scan_dir($dir);
foreach ($list as $file)
{
if (is_dir($dir.$file))
{
clear_dir($dir.$file.'/');
rmdir($dir.$file);
}
else
{
unlink($dir.$file);
}
}
}
// пример использования
clear_dir($dir);
if ( !glob($dir ."*"))
{
rmdir( $dir );
}
}
Свои комменты в ожидании переделки!
Когда сделаю не знаю!
Времени нет...
Иначе сообщение будет удалено, вас в бан - все просто!
Но если, сил нет как хочется высказать всё, что вы думаете об этом, пожалуйста - комменты от Vk - форма ниже: