用cURL替换file_get_contents()?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用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的线替换该线,以便它可以在每个服务器上运行?

答案

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

$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;

以上是关于用cURL替换file_get_contents()?的主要内容,如果未能解决你的问题,请参考以下文章

php curl和file_get_contents读不到数据

php中的file_get_contents或curl?

如何使用 CURL 而不是 file_get_contents?

如何将file_get_contents转换为cURL

PHP cURL 与 file_get_contents

无法通过 HTTPS 获取 file_get_contents 或 cURL