2014-12-28 34 views
0

我需要关于谷歌图像卷曲的帮助。我无法通过width-height筛选结果。如何过滤谷歌图像卷曲的宽度高度?

function get_url_contents($url) { 
    $crl = curl_init(); 

    curl_setopt($crl, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;  .NET CLR 1.1.4322)'); 
    curl_setopt($crl, CURLOPT_URL, $url); 
    curl_setopt($crl, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($crl, CURLOPT_CONNECTTIMEOUT, 5); 

    $ret = curl_exec($crl); 
    curl_close($crl); 
    return $ret; 
} 

$json = get_url_contents('http://ajax.googleapis.com/ajax/services/search/images? v=1.0&q=keyword'); 

$data = json_decode($json); 

foreach ($data->responseData->results as $result) { 
    $results[] = array('url' => $result->url, 'alt' => $result->title); 
} 

print_r($results); 
+0

详述您的问题,正是你所面对的问题 – MTahir

+0

细节?一切都在这里。 – Ugurcan

回答

2

您可以使用imgsz URL参数来设置大小。根据文档中的像素不能指定确切大小,但您可以设置之一:

  • imgsz=icon限制结果,以小图像
  • imgsz=small|medium|large|xlarge限制结果,以中等大小的图像
  • imgsz=xxlarge限制结果,以大型图片
  • imgsz=huge限制结果,以超大的图像

来源:https://developers.google.com/image-search/v1/jsondevguide(向下滚动至参考)。

为了实现这一点,您$json VAR更改为:

$json = get_url_contents('http://ajax.googleapis.com/ajax/services/search/images?v=1.0&q=keyword&imgsz=small'); 
+0

但我想按我的尺寸搜索。这是不可能的吗? – Ugurcan

+0

根据文档,您无法指定像素的确切大小。如果你需要它们的尺寸是200x200,那么抓住一个大于200x200的尺寸'imgsz',然后用'imagemagick'或'gd'在你的服务器上调整它们的大小(有些库可以做到这一点,而不会有太多的麻烦, ://github.com/eventviva/php-image-resize)。 – Bjorn

+0

我将在wordpress主题中使用。 :(。 你知道这个不同的方式?谢谢你的一切 – Ugurcan