• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

比file_get_contents稳定的curl_get_contents分享_php技巧

php 搞代码 4年前 (2022-01-26) 31次浏览 已收录 0个评论

分享一个实际在用的函数:

 <BR>/*比file_get_contents稳定的多!$timeout为超时时间,单位是秒,默认为1s。*/ <BR>function curl_get_contents($url,$timeout=1) { <BR>$curlHandle = curl_init(); <BR>curl_setopt( $curlHandle , CURLOPT_URL, $url ); <BR>curl_setopt( $curlHandle , CURLOPT_RETURNTRANSFER, 1 ); <BR>curl_setopt( $curlHandle , CURLOPT_TIMEOUT, $timeout ); <BR>$result = curl_exec( $curlHandle ); <BR>curl_close( $curlHandle ); <BR>return $result; <BR>} <BR>$hx = curl_get_contents('http://www.gaodaima.com'); <BR>


相信使用过file_get_contents函数的朋友都知道,当获取的$url访问不了时,会导致页面漫长的等待,甚至还能导致PHP进程占用CPU达100%,因此这个函数就诞生了。curl的一些常识介绍
保留原file_get_contents函数的原因是当读取本地文件时,用原生的file_get_contents显然更合适。
另来自张宴的file_get_contnets的优化,具体可看:http://www.gaodaima.com/article/28030.htm
同样是设置超时时间来解决这个问题。如果没装curl,就必须得用这个方式了。

 <BR>$ctx = stream_context_create(array( <BR>'http' =><b>6本文来源gao@dai!ma.com搞$代^码!网7</b><pre>搞gaodaima代码

array(
‘timeout’ => 1 //设置一个超时时间,单位为秒
)
)
);
file_get_contents(“http://www.gaodaima.com/&#8221;, 0, $ctx);

另外,据不完全测试,使用curl获取页面比用file_get_contents稳定的多。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:比file_get_contents稳定的curl_get_contents分享_php技巧
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址