2013-12-20 63 views
0

嗨,我正在使用下面的代码来检查远程图像的大小。它的作品,但它需要大量的时间来检查图像的大小是否有任何bette rove做get_headers需要太多的时间来检查图像的大小

<?php 
    $url='http://testfile.com/test/sddkssk.jpg'; 
    $head = array_change_key_case(get_headers($url, TRUE)); 
    $filesize = $head['content-length']; 
    if ($filesize >= 131000) {  
    echo 'good image'; 
    } 

,但它需要2-3分钟每次加载有没有更好的办法可以做到同样的工作非常快

+3

多大的形象呢?远程服务器是否可能不理解只有标题的请求?在浏览器中提出请求时速度会更快吗? –

+0

@Pekka웃这个脚本对浏览器来说也很慢,但是当我们直接在浏览器中粘贴图像url时,所有图像的加载速度都很快。 – Priya

+0

剖析你的代码,并确切地看到*瓶颈在哪里。你确定它是'get_headers'吗? –

回答

0
$size = getimagesize("http://www.example.com/gifs/logo.gif"); 

// if the file name has space in it, encode it properly 
$size = getimagesize("http://www.example.com/gifs/lo%20go.gif"); 
+0

是的它是混合类型的文件空间在少数几乎没有在那里。可以üplz解释如何在我的代码中执行此操作 – Priya

+2

您使用urlencode()。 –

+0

这将首先加载整个文件。它不会帮助即使加载*只是头部时遇到问题的OP * –