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完成请求主要分为四步:
1.初始化,创建一个新cURL资源
2.设置URL和相应的选项
3.抓取URL并把它传递给浏览器
4.关闭cURL资源,并且释放系统资源
<?php //1.初始化,创建一个新cURL资源 $ch = curl_init(); //2.设置URL和相应的选项 curl_setopt($ch, CURLOPT_URL, "http://www.baidu.com"); curl_setopt($ch, CURLOPT_HEADER, 0); //3.抓取URL并把它传递给浏览器 curl_exec($ch); //4.关闭cURL资源,并且释放系统资源 curl_close($ch); ?>
第二步最为关键,可以设置一些高级选项
CURLOPT_URL | 需要获取的URL地址,也可以在curl_init()函数中设置。 |
CURLOPT_USERAGENT | 在HTTP请求中包含一个“User-Agent: “头的字符串。 |
CURLOPT_USERPWD | 传递一个连接中需要的用户名和密码,格式为:“[username]:[password]”。 |
curl的原理是模拟浏览器的操作,它的效率、稳定性要比file_get_contents()高很多
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/20419.html