Какой самый простой и быстрый способ получить тип MIME / Media / Content для данного URL? - PullRequest
0 голосов
/ 02 октября 2011

Итак, я собираюсь перенести файл с удаленного сервера на мой сервер, но перед тем, как передать его, я хочу знать, что это за файл.Если это HTML-файл, я буду иметь дело с ним определенным образом, если это PDF-файл, я буду иметь дело с ним по-другому, и если, например, это исполняемый файл, я не хочу передаватьэто вообще.

Все, что мне нужно - это URL.Теперь, если этот URL-адрес является явным (т. Е. http://example.com/file.pdf), это не проблема, я могу просто проверить расширение файла, и мы отсортированы. Однако мне может быть дан только URL-адрес, такой как http://example.com иэто может быть что угодно.

Можно ли проверить (с помощью PHP), какой это тип файла, прежде чем я его скачаю?

Редактировать: Я буду использовать cURLпередать файл, но я считаю, что curl_getinfo можно вызвать только после передачи файла?

Ответы [ 2 ]

1 голос
/ 02 октября 2011

Попробуйте использовать функцию PHP get_headers , например ::100100

$h = get_headers("http://google.com", $format = 1);
$content_type = $h["Content-Type"];
// and now parse what you want from array
0 голосов
/ 02 октября 2011

Используя дескриптор fopen, вы можете вызвать stream_get_meta_data () для него.

...