Я хочу уничтожить все изображения в папке с PHP, как я могу это сделать?
foreach(glob('/www/images/*.*') as $file) if(is_file($file)) @unlink($file);
glob()
возвращает список файлов, соответствующих шаблону подстановки.
unlink()
удаляет данное имя файла (и возвращается, если оно было успешным или нет).
Значения @
перед именами PHP заставляют PHP подавлять функциональные ошибки.
Подстановочный знак зависит от того, что вы хотите удалить. *.*
для всех файлов, а *.jpg
– для файлов jpg. Обратите внимание, что glob
также возвращает каталоги, поэтому, если у вас есть каталог с именем images.jpg
, он также вернет его, что приведет к сбою unlink
с момента удаления файлов.
is_file()
гарантирует, что вы только is_file()
удалить файлы.
Самый простой (нерекурсивный) способ – использовать glob()
:
$files = glob('folder/*.jpg'); foreach($files as $file) { unlink($file); }
$images = glob("images/*.jpg"); foreach($images as $image){ @unlink($image); }
использовать unlink and glob function
подробнее см. ссылку http://php.net/manual/en/function.unlink.php и http://php.net/manual/en/function.glob.php