Короткий пост о том, как в аргументе функции
Предположим, каталог содержит следующие файлы:
И требуется получить файлы имеющие в названии только "picture" ("picture1" не подходит) и с расширениями jpg, png или вообще без расширения.
Естественно, простейшим решением можно считать объединение результатов трех вызовов
Но давайте попробуем ограничиться одним вызовом. В этом нам поможет изучение странички мануала функции
Получаем тот же самый набор файлов, что и в первом примере (сортировка не в счет). На этом всё, читайте почаще мануалы и находите решения попроще. Кстати, в комментах можете поделиться еще более хитрыми шаблонами для
glob
использовать шаблон или.Предположим, каталог содержит следующие файлы:
- file.txt
- picture
- picture.gif
- picture.jpg
- picture.png
- picture1.jpg
И требуется получить файлы имеющие в названии только "picture" ("picture1" не подходит) и с расширениями jpg, png или вообще без расширения.
Естественно, простейшим решением можно считать объединение результатов трех вызовов
glob
:
print_r(array_merge(
glob('./picture\.jpg'),
glob('./picture\.png'),
glob('./picture')
));
Но давайте попробуем ограничиться одним вызовом. В этом нам поможет изучение странички мануала функции
glob
, а точнее - списка параметров. В нем нас интересует второй аргумент flags
и его значение GLOB_BRACE
:
print_r(
glob('./picture{,\.jpg,\.png}', GLOB_BRACE)
);
Получаем тот же самый набор файлов, что и в первом примере (сортировка не в счет). На этом всё, читайте почаще мануалы и находите решения попроще. Кстати, в комментах можете поделиться еще более хитрыми шаблонами для
glob
, если у вас таковые есть.
Комментариев нет:
Отправить комментарий