Проверка медиа-объектов в PHP - PullRequest
0 голосов
/ 20 августа 2010

Я хочу, чтобы пользователи на моем веб-сайте могли ссылаться на удаленные мультимедийные объекты: flash, музыку, фильмы и т. Д. У меня уже есть регулярное выражение для проверки ссылок:

/(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:\/~\+#]*[\w\-\@?^=%&\/~\+#])?/i

При наличии соответствующих ссылок я хочу проверить, являются ли они мультимедийными файлами, а не просто проверять расширение в URL. Я думал, что смогу просто проверить заголовки HTTP для типа контента, но это может быть слишком много - я надеялся, что PHP уже может иметь некоторые нативные функции.

1 Ответ

0 голосов
/ 20 августа 2010

Расширение FileInfo обеспечивает функцию finfo_file, которая даст вам MIME-тип файла.

На странице справочного руководства:

Функции в этом модуле пытаются угадать тип содержимого и кодировку файла, ища определенные последовательности магических байтов в определенных позициях в файле.Хотя это не пуленепробиваемый подход, используемые эвристики делают очень хорошую работу.

...