Найти файлы с определенным именем, но с переменным расширением - PullRequest
1 голос
/ 28 февраля 2011

Я бы хотел иметь возможность выбрать файл, просто указав его имя (без расширения).Например, у меня может быть переменная $id, содержащая 12.Я хочу иметь возможность выбрать файл с именем-id-in-the-variable, скажем, 12.png, из каталога, но он может иметь любое из нескольких расширений файлов, перечисленных ниже:

  • .swf
  • .png
  • .gif
  • .jpg

Существует только одно вхождение каждого идентификатора.Я мог бы использовать цикл и file_exists(), но есть ли лучший способ?

Спасибо,

Джеймс

Ответы [ 3 ]

4 голосов
/ 28 февраля 2011
$matches = glob("12.*");

вернет массив со всеми совпадающими именами файлов в текущем каталоге.glob() работает почти так же, как сопоставление с подстановочными знаками в приглашении оболочки.

2 голосов
/ 28 февраля 2011

Взгляните на glob .К сожалению, точная семантика параметра $pattern не описана в руководстве.Но, похоже, эту проблему можно решить с помощью этой функции.

1 голос
/ 28 февраля 2011

Быстрый вопрос к ОП здесь:

Какое расширение файла этого файла: somefile.tar.gz?Это .gz или .tar.gz?:) Я спрашиваю, потому что большинство ответит на этот вопрос как .tar.gz ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...