Удалить файл или папку с содержимым PHP

  • Аноним2 месяца назад
    Как удалить отдельный файл или папку со всеми входящими в ней файлами и папками. PHP скрипт, который проверяет содержимое, если это папка, то удалит папку, а если это отдельный файл, то удалит файл.
    Ответов: 1
  • Аноним2 месяца назад
    Чтобы удалить отдельный файл или папку со всем содержимым, можно воспользоваться PHP функцией:
    function removeFileDir($directory) {

    if(!is_dir($directory)) {
    return unlink($directory);
    }else {
    $files = array_diff(scandir($directory), ['.','..']);
    }

    foreach ($files as $file) {
    if(is_dir($directory.'/'.$file)) {
    removeFileDir($directory.'/'.$file);
    }else {
    unlink($directory.'/'.$file);
    }
    }

    return rmdir($directory);
    }


    Функция файловой системы is_dir определяет, является ли имя файла директорией.
    Функция файловой системы scandir получает список файлов и каталогов, расположенных по указанному пути.
    Функция для работы с массивами array_diff вычисляет расхождение массивов.

    Вызвать функцию можно следующим образом:
    removeFileDir($_SERVER['DOCUMENT_ROOT'].'/site/folder_to_remove/');

    или

    removeFileDir($_SERVER['DOCUMENT_ROOT'].'/site/name_of_file.jpg');


    Получить корневую папку сайта в скрипте PHP можно используя предопределённый (глобальный) массив $_SERVER:
    $_SERVER['DOCUMENT_ROOT'];
Ваш ответ:
  • bold
  • italic
  • underline
  • strike
  • Add link
  • Add image
  • Blockquote
  • Align left
  • Align center
  • Align right
  • Code