php的扩展php_curl实例详解

原文链接:php的扩展php_curl实例详解

curl发送请求的实例在网上搜索,php的扩展php_curl实例详解类似的文章可以搜到很多,但是为什么还要写这篇呢,因为发现网上大多在页面上的排版都挺乱的,看起来比较吃力,实例代码也不整齐,所以干脆重新测试重新编写代码吧,就当是备忘录吧。

一、平时我们发送请求采用的方式

一般使用如下的方式:

<?php
$str = file_get_contents("http://www.baidu.com/");
//或者
$str = file("http://www.baidu.com/");
//或者
readfile("http://www.baidu.com/");
?>

这样我们会发现,我们没有办法有效地进行错误处理,更重要的是我们没有办法完成一些高难度的任务,如:处理cookies,验证,表单提交,文件上传等等。

二、使用php_curl发送请求

介于以上原因,我们采用php_curl扩展来实现,使用php_curl发送请求需要四个步骤:

1、初始化,创建一个新curl资源;

2、设置url和相应的选项;

3、抓取url并把它传递给浏览器;

4、关闭curl资源,并且释放系统资源;

实例代码如下:

<?php
//1.初始化,创建一个新curl资源
$ch = curl_init();
//2.设置url和相应的选项
curl_setopt($ch, CURLOPT_URL, ”http://www.lampbrother.net/”);
curl_setopt($ch, CURLOPT_HEADER, 0);
//3.抓取url并把它传递给浏览器
curl_exec($ch);
//4.关闭curl资源,并且释放系统资源
curl_close($ch);
?>

上述四步中,其中第二步最为关键,可以设置一些高级选项,可以参考文章<<>>。

三、curl比file_get_contents相比有那些优势?

1、在效率方面,curl的原理是模拟浏览器的操作,它的效率要比file_get_contents()高出四倍以上,试想一下,我们要采集一个信息量特别庞大的站,运行效率的差别可想而知!

2、在稳定性方面,curl也远比file_get_contents()函数要好很多,curl可以返回错误码及错误信息,方便排查出错原因!

总之curl的功能是非常强大的,很多的功能需要大家自行去实践,这样才会真正掌握curl的用法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值