Как сохранить изображение с удаленного сервера, где отсутствует расширение изображения, с помощью переполнения стека

Я использую 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 для проверки заголовка ответа, но кажется, что эффективность неэффективна. правильный способ сделать это?

0

Решение

хорошо, чем я могу просто дать вам подсказку, чтобы использовать 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;
}
?>
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]