功能比exif_imagetype()更快

时间:2014-03-22 12:53:58

标签: php image-processing

任何人都可以建议我比exif_imagetype()更快的功能或任何可以检查远程图像是否存在的代码。检查是循环完成的。

谢谢

2 个答案:

答案 0 :(得分:0)

您只是在检查是否存在,那么为什么不使用file_get_contents timeout来实现?

$contextStream = stream_context_create(array('http'=>
    array(
        'timeout' => 3,//That would be 3 secs
         )
));
echo file_get_contents('http://someurl.com/remoteimage.jpg', false, $contextStream);

答案 1 :(得分:0)

尝试这样的事情......

$Headers = get_headers($url);

if(strpos($Header[0], '200')) {
    //Exists
} else {
    //Doesn't Exist
}

响应的第一行应该是http响应消息,例如HTTP/1.1 200 Ok。请注意,根据服务器和网址,您可以获得Http Status Codes中的任何一个。由您来决定哪些算作成功(例如,如果您得到503"暂时不可用",您是否列出一个列表并稍后尝试或只是放弃?)

这样你就不会只是阅读标题而下载文件。

如果 存在,您应该能够检查包含Content-Type的标题以获取图像格式