用cURL替换file_get_contents()?

时间:2012-08-12 05:52:25

标签: php curl file-get-contents

我不想使用此功能,因为出于安全原因它在某些服务器上不可用,我如何用cURL替换file_get_contents()?

以下行导致我的服务器出现问题:

$response = file_get_contents('http://images.google.com/images?hl=en&q=' . urlencode ($query) . '&imgsz=' . $size . '&imgtype=' . $type . '&start=' . (($page - 1) * 21));

如何用另一个使用curl的行替换该行,以便它可以在每个服务器上运行?

1 个答案:

答案 0 :(得分:7)

这是一个可以使用的清洁功能

$response = get_data('http://images.google.com/images?hl=en&q=' . urlencode ($query) . '&imgsz=' . $size . '&imgtype=' . $type . '&start=' . (($page - 1) * 21));

function get_data($url)
{
  $ch = curl_init();
  $timeout = 5;
  curl_setopt($ch,CURLOPT_URL,$url);
  curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
  curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
  $data = curl_exec($ch);
  curl_close($ch);
  return $data;
}