Я использую DOMDocument для извлечения HTML-страницы, которая содержит файл изображения, HTML-страница выглядит следующим образом
<div>
<img src="http://pic.aa.com/a/b/0525">
</div>
После того, как я извлек адрес SRC, я поместил его в эту функцию
copy('http://pic.aa.com/a/b/0525', 'd:tmp/img_name');
Я не могу понять, как определить, какое расширение должен иметь файл, нет никакой подсказки от URI, и единственный возможный способ — использовать браузер Chrome для проверки заголовка ответа, но кажется, что эффективность неэффективна. правильный способ сделать это?
хорошо, чем я могу просто дать вам подсказку, чтобы использовать exif_imagetype();
Функция представлена здесь:
http://php.net/manual/en/function.exif-imagetype.php
Вы можете использовать цикл for / while / foreach для определения типа изображения, например:
<?php
if (exif_imagetype('image.gif') != IMAGETYPE_GIF) {
echo 'The picture is not a gif';
}
?>
также что-то вроде этого может помочь вам:
<?php
$filename = 'http://myhost/myunkownimagefiletype';
$size = getimagesize($filename);
switch ($size['mime']) {
case "image/gif":
echo "Image is a gif";
break;
case "image/jpeg":
echo "Image is a jpeg";
break;
case "image/png":
echo "Image is a png";
break;
case "image/bmp":
echo "Image is a bmp";
break;
}
?>
Других решений пока нет …