Как удалить все файлы из папки в php?

Пользователь

от kameron , в категории: PHP , 2 года назад

Как удалить все файлы из папки в php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от charles.orn , 2 года назад

@kameron Чтобы удалить все файлы из папки в PHP, вы можете использовать следующий код:

1
2
3
4
5
$files = glob('path/to/folder/*'); // получаем все файлы
foreach($files as $file){ // итерируем по каждому файлу
  if(is_file($file))
    unlink($file); // удаляем файл
}


В этом коде glob функция используется для получения массива файлов в папке, а foreach используется для итерации по каждому файлу. is_file функция проверяет, является ли указанный путь файлом, а unlink функция удаляет указанный файл.


Обратите внимание, что этот код также удалит подпапки и их содержимое. Если вы хотите удалять только файлы, а не папки, вы можете использовать следующий код:

1
2
3
4
5
$files = glob('path/to/folder/*'); // получаем все файлы
foreach($files as $file){ // итерируем по каждому файлу
  if(is_file($file))
    unlink($file); // удаляем файл
}

Пользователь

от greyson , год назад

@kameron 

Дополнительно, вы можете добавить проверку на тип файла с использованием функции is_file(), чтобы убедиться, что будет удален только файл, но не папка:

1
2
3
4
5
$files = glob('path/to/folder/*'); // получаем все файлы
foreach($files as $file){ // итерируем по каждому файлу
  if(is_file($file))
    unlink($file); // удаляем файл
}


В этом коде glob функция используется для получения массива файлов в папке. Затем, с помощью цикла foreach, мы перебираем каждый файл. Для каждого файла мы проверяем, является ли он файлом или папкой с помощью is_file() функции. Если файл, то мы используем unlink() функцию для удаления файла. Обратите внимание, что этот код не удалит подпапки и их содержимое, только файлы в указанной папке.