PHP: Как удалить файлы по маске?

PHP: Как удалить файлы по маске? Как в PHP удалять файлы в папке, а также удалять файлы по маске.

В статье про организацию фотогалереи на Yii через поведение, там использовалась очистка папки от файла .DS_Store

array_map("unlink", glob(Yii::getPathOfAlias('webroot') . '/' .$this->galleryDir. '/.DS_Store'));

Вообще-то говоря, так не нужно удалять (исправил там код) - ведь там удаляется только один файл и код надо исправить на

@unlink(Yii::getPathOfAlias('webroot') . '/' .$this->galleryDir. '/.DS_Store');

 

Достаточно распространенная в PHP задача, когда требуется удалить не один файл, а сразу несколько по маске. Решается в одну строчку:

array_map("unlink", glob("your/folder/*.txt"));

glob – получает массив всех файлов, удовлетворяющих нашей маске.

array_map – прогоняет функцию unlink по элементам массива, выданного функцией glob.

Все очень просто: сколько файлов требуется удалить по данной маске, столько раз и вызовется функция unlink. А сама функция unlink может удалять, к сожалению, только 1 файл за 1 раз.

almix
Разработчик Loco, автор статей по веб-разработке на Yii, CodeIgniter, MODx и прочих инструментах. Создатель Team Sense.

Вы можете почитать все статьи от almix'а.



Другие статьи по этой теме:

Комментарии (0)     Подпишитесь на RSS комментариев к этой статье.