У меня на сервере есть аудиоформаты .mp3 и .pcm, как мне установить тип содержимого заголовка php, если я не знаю, какой тип запросил пользователь?
мне действительно нужно указать тип содержимого php head?
Ответы (4)
Я думаю, вы можете просто использовать «Application/octet-stream» для любого типа двоичного формата файла.
Да, вы должны .. вы можете использовать mime_content_type
для обнаружения MIME Content-type для файла упростит процесс в вашем заголовке
Пример
header(sprintf('Content-type: %s',mime_content_type($filename)));
header('Content-type: .mime_content_type($filename));
- person Alvin Wong; 15.11.2012
Когда вы говорите, что установили заголовок, я думаю, что вы переписываете свои .mp3 и .pcm в PHP-Script.
В этом случае вы должны переписать его с расширением файла. Затем вы можете проверить расширение в переменной $_GET.
if(strpos('.mp3', $_GET['filename']) !== false) {
header('Content-Disposition: inline;filename="test.mp3"');
}
if(strpos('.pcm', $_GET['filename']) !== false) {
header("Content-type: application/octet-stream;");
}
Данные PCM представляют собой RAW-данные, поэтому я думаю, что вы можете использовать octet-stream или классное решение от Baba.
Таким образом, вы можете проверить, какой это формат, и установить заголовок для указанного файла.
Вот еще одно сообщение об этой проблеме: Вывод mp3 с помощью php
$_GET['filename'] = "a.mp3.pcm"
?
- person Alvin Wong; 15.11.2012
На моем сайте я использовал этот тип заголовка. Я предлагаю этот.
Пример
заголовок («тип содержимого: текст/xml; набор символов = utf-8; набор символов = окна-1256»);