我正在抓取一些网站的图片。但是,其中一些网站的扩展程度为.ashx
,这使我无法确定图片的大小。
我正在使用getimagesize()
:
$imgsize = getimagesize($url);
这会导致以下错误:
getimagesize(url): failed to open stream: No such file or directory
如何解决这个问题,并检查图像的大小?
答案 0 :(得分:0)
我认为您可以尝试使用this answer中的代码,但我认为它应该按照您已有的方式运行:
// From @dynamic: https://stackoverflow.com/a/10971333/697370
$cont = file_get_contents($url);
$r = imagecreatefromstring($cont);
imagesx($r);
imagerx($r);
如果符合以下条件,原始代码可能无效:
allow_url_fopen
(不太可能,因为我认为这也会导致您无法使用getimagesize()
获取常规图片)或getimagesize
失败的正确标头。可能还有其他原因,但这是我能想到的唯一两个原因。