2017-02-05 19 views
0

Я хочу проверить, доступен ли браузер для воспроизведения.PHP: проверьте, отображается ли файл браузером

Прямо сейчас, я это делаю:

$playable = ['image/png', 'image/jpeg' ... 'video/mp4' ...]; 
if (isset($playable[mime_content_type($file)])) { 
    // file is playable 
} 

Есть ли лучший способ сделать это? Может быть, список MIME-типов, которые можно воспроизводить в современных браузерах?

+2

По крайней мере, вы могли бы перейти условную использовать 'in_array' вместо' isset'. Что касается вашего основного вопроса, посмотрите на это: http://stackoverflow.com/questions/18678400/knowing-with-php-if-the-browser-can-play-audio-file-with-html5-audio- тег –

ответ

0

Вы можете просто загрузить содержимое в соответствующем элементе, основанном на первой половине типа mime. Затем вы можете использовать обработчик события onerror для обнаружения ошибок.

How does one use the onerror attribute of an img element См