使用ASHX扩展获取图像

时间:2014-08-04 15:19:56

标签: php

我正在抓取一些网站的图片。但是,其中一些网站的扩展程度为.ashx,这使我无法确定图片的大小。

我正在使用getimagesize()

$imgsize = getimagesize($url);

这会导致以下错误:

getimagesize(url): failed to open stream: No such file or directory

如何解决这个问题,并检查图像的大小?

1 个答案:

答案 0 :(得分:0)

我认为您可以尝试使用this answer中的代码,但我认为它应该按照您已有的方式运行:

// From @dynamic: https://stackoverflow.com/a/10971333/697370
$cont = file_get_contents($url);
$r = imagecreatefromstring($cont);
imagesx($r);
imagerx($r);

如果符合以下条件,原始代码可能无效:

  1. 您没有启用allow_url_fopen(不太可能,因为我认为这也会导致您无法使用getimagesize()获取常规图片)或
  2. .ashx脚本正在生成图像,但未发送导致getimagesize失败的正确标头。
  3. 可能还有其他原因,但这是我能想到的唯一两个原因。