手机
当前位置:查字典教程网 >编程开发 >php教程 >比file_get_contents稳定的curl_get_contents分享
比file_get_contents稳定的curl_get_contents分享
摘要:分享一个实际在用的函数:复制代码代码如下:/*比file_get_contents稳定的多!$timeout为超时时间,单位是秒,默认为1s...

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

复制代码 代码如下:

/*比file_get_contents稳定的多!$timeout为超时时间,单位是秒,默认为1s。*/

function curl_get_contents($url,$timeout=1) {

$curlHandle = curl_init();

curl_setopt( $curlHandle , CURLOPT_URL, $url );

curl_setopt( $curlHandle , CURLOPT_RETURNTRANSFER, 1 );

curl_setopt( $curlHandle , CURLOPT_TIMEOUT, $timeout );

$result = curl_exec( $curlHandle );

curl_close( $curlHandle );

return $result;

}

$hx = curl_get_contents('http://www.jb51.net');

相信使用过file_get_contents函数的朋友都知道,当获取的$url访问不了时,会导致页面漫长的等待,甚至还能导致PHP进程占用CPU达100%,因此这个函数就诞生了。curl的一些常识介绍

保留原file_get_contents函数的原因是当读取本地文件时,用原生的file_get_contents显然更合适。

另来自张宴的file_get_contnets的优化,具体可看:http://www.jb51.net/article/28030.htm

同样是设置超时时间来解决这个问题。如果没装curl,就必须得用这个方式了。

复制代码 代码如下:

$ctx = stream_context_create(array(

'http' => array(

'timeout' => 1 //设置一个超时时间,单位为秒

)

)

);

file_get_contents("http://www.jb51.net/", 0, $ctx);

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

【比file_get_contents稳定的curl_get_contents分享】相关文章:

PHP中4种常用的抓取网络数据方法

拼音码表的生成

常用PHP框架功能对比表

PHP安装memcached扩展笔记

typecho插件编写教程(四):插件挂载

php删除指定目录的方法

十天学会php之第九天

用PHP实现XML备份Mysql数据库

php将图片文件转换成二进制输出的方法

一个php作的文本留言本的例子(四)

精品推荐
分类导航