php curl 可以使用 URL 的语法模拟浏览器来传输数据
cURL 可以使用 URL 的语法模拟浏览器来传输数据,因为它是模拟浏览器,因此它同
样 支 持 多 种 协 议 , FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及
LDAP 等协议都可以很好的支持,包括一些:HTTPS 认证,HTTP POST 方法,HTTP
PUT 方法,FTP 上传,keyberos 认证,HTTP 上传,代理服务器,cookies,用户名/密
码认证,下载文件断点续传,上传文件断点续传,http 代理服务器管道,甚至它还支持
IPv6,scoket5 代理服务器,通过 http 代理服务器上传文件到 FTP 服务器等等。这就是
我们为什么要使用 cURL 的原因!
使用 cURL 完成简单的请求主要分为以下四步:
1.初始化,创建一个新 cURL 资源
2.设置 URL 和相应的选项
3.抓取 URL 并把它传递给浏览器
4.关闭 cURL 资源,并且释放系统资源
我们来采集一个页面,通常情况下,我们会使用 file_get_contents()函数来获取:
像这样:
<?php
$str = file_get_contents('http://bbs.lampbrother.net');
//或者是:
$str = file("http://bbs.lampbrother.net");
//或者是:
readfile("http://bbs.lampbrother.net");
?>
这样我们会发现,我们没有办法有效地进行错误处理,更重要的是我们没有办法完成一
些高难度的任务:
如:处理 cookies,验证,表单提交,文件上传等等。
好,现在我们来用代码完成上述 cURL 的四步: