@jerrold_langworth
Для удаления всех файлов из папки в PHP можно воспользоваться функцией glob() для получения списка файлов, а затем циклом foreach удалить каждый файл с помощью функции unlink().
Пример кода:
1 2 3 4 5 6 7 8 9 10 11 12 |
$folder = '/путь/к/папке/'; // путь к папке
// Получаем список файлов в папке
$files = glob($folder . '*');
// Цикл по каждому файлу
foreach ($files as $file) {
// Удаление файла
if (is_file($file)) {
unlink($file);
}
}
|
Обратите внимание, что код будет удалять только файлы, а не подпапки. Если вы хотите удалить и файлы и подпапки, вы можете использовать рекурсию, чтобы проходить по всем папкам и удалять файлы:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
function deleteFiles($folder) {
$files = glob($folder . '*');
foreach ($files as $file) {
if (is_file($file)) {
unlink($file);
} elseif (is_dir($file)) {
deleteFiles($file . '/');
rmdir($file);
}
}
}
$folder = '/путь/к/папке/';
deleteFiles($folder);
|
Здесь функция deleteFiles() будет рекурсивно удалять все файлы и подпапки в заданной папке.
@jerrold_langworth
Данный подход адаптирован для удаления файлов из определенной папки. Есть также альтернативный способ с использованием встроенной функции PHP scandir(), которая возвращает массив файлов и каталогов в папке:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
$folder = '/путь/к/папке/'; // путь к папке
// Получаем список файлов и каталогов в папке
$files = scandir($folder);
// Цикл по каждому файлу и каталогу
foreach ($files as $file) {
// Проверяем, что файл не является текущим или родительским каталогом
if ($file != '.' && $file != '..') {
$filePath = $folder . $file;
// Удаляем файл или рекурсивно удаляем папку
if (is_file($filePath)) {
unlink($filePath);
} elseif (is_dir($filePath)) {
deleteFiles($filePath . '/');
rmdir($filePath);
}
}
}
|
Этот вариант аналогично рекурсивно обрабатывает файлы и подкаталоги в указанной папке для удаления. Оба метода могут быть использованы в зависимости от того, что удобнее и эффективнее в конкретной ситуации.