PHP中的curl函数
来源:互联网 发布:大数据的工资待遇 编辑:程序博客网 时间:2024/06/05 16:07
一.用cURL制作一个简单的网页爬虫
$curl=curl_init('http://www.baidu.com');curl_exec($curl);curl_close($curl);
$curlobj = curl_init(); // 初始化curl_setopt($curlobj, CURLOPT_URL, "http://www.baidu.com"); // 需要获取的 URL 地址,也可以在curl_init() 初始化会话的时候。curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, true); // 将curl_exec()获取的信息以字符串返回,而不是直接输出$output=curl_exec($curlobj); // 执行curl_close($curlobj); // 关闭cURLecho str_replace("百度","屌丝",$output);
1.curl_init ([ string $url = NULL ] )
作用:初始化一个新的会话,返回一个cURL句柄
供curl_setopt(), curl_exec()和curl_close() 函数使用
参数:url:如果提供了该参数,CURLOPT_URL 选项将会被设置成这个值。你也可以使用curl_setopt()函数手动地设置这个值。
返回值:如果成功,返回一个cURL句柄,出错返回 FALSE。
2.curl_exec ( resource $ch )
作用:执行给定的cURL会话。这个函数应该在初始化一个cURL会话并且全部的选项都被设置后被调用
参数:ch由 curl_init() 返回的 cURL 句柄。
返回值:成功时返回 TRUE, 或者在失败时返回 FALSE。
然而,如果 CURLOPT_RETURNTRANSFER选项被设置,函数执行成功时会返回执行的结果,失败时返回 FALSE
3.cur_close ( resource $mh )
作用:关闭一个cURL会话并且释放所有资源。cURL句柄ch 也会被释放
参数: ch由 curl_init() 返回的 cURL 句柄
返回值:没有返回值.
二.用cURL调用WebService获取天气信息
header("Content-type: text/html; charset=utf-8");define('AppKey','自己申请的appkey值');$cityname='北京';$url='http://v.juhe.cn/weather/index?format=2&cityname='.$cityname.'&key='.AppKey;$ch = curl_init();curl_setopt($ch,CURLOPT_URL,$url);curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);$out=curl_exec($ch);curl_close($ch);$out =json_decode($out,true);echo '<pre>';print_r($out);echo '</pre>';
三.用cURL登录慕课网并下载个人空间页面
四.用cURL从FTP服务器上下载文件到本地
$curlobj = curl_init(); curl_setopt($curlobj, CURLOPT_URL, "ftp://192.168.10.1/1.jpg"); curl_setopt($curlobj, CURLOPT_HEADER, 0); curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1); //允许 cURL 函数执行的最长秒数。 curl_setopt($curlobj, CURLOPT_TIMEOUT, 300); //FTP用户名:密码//curl_setopt($curlobj, CURLOPT_USERPWD, "admin:123456");//保存到本地的文件名$outfile = fopen('zhangsan.jpg', 'wb');//设置输出文件(资源流),默认为STDOUT (浏览器)curl_setopt($curlobj, CURLOPT_FILE, $outfile);$rtn = curl_exec($curlobj); fclose($outfile); if(!curl_errno($curlobj)){ echo "RETURN: " . $rtn; } else { echo 'Curl error: ' . curl_error($curlobj);}curl_close($curlobj);
五.用cURL从本地上传文件到FTP
$curlobj = curl_init();$localfile = 'zhang3.php';$fp = fopen($localfile,'r');curl_setopt($curlobj,CURLOPT_URL,'ftp://192.168.10.1/li3.php');curl_setopt($curlobj,CURLOPT_HEADER,0);curl_setopt($curlobj,CURLOPT_RETURNTRANSFER,1);curl_setopt($curlobj,CURLOPT_TIMEOUT,300);//curl_setopt($curlobj, CURLOPT_USERPWD, "admin:");curl_setopt($curlobj,CURLOPT_UPLOAD,true);//上传文件时需要读取的文件curl_setopt($curlobj,CURLOPT_INFILE,$fp);//希望传给远程站点的文件尺寸curl_setopt($curlobj,CURLOPT_INFILESIZE,filesize($localfile));$rtn = curl_exec($curlobj);fclose($fp);if(!curl_errno($curlobj)){ echo 'Uploader successfully';}else{ echo 'Curl error: '.curl_error($curlobj); echo 'Curl errno: '.curl_errno($curlobj);}curl_close($curlobj);
六.用cURL访问HTTPS资源
$curlobj = curl_init(); // 初始化curl_setopt($curlobj, CURLOPT_URL, "https://ajax.aspnetcdn.com/ajax/jquery.validate/1.12.0/jquery.validate.js"); // 设置访问网页的URLcurl_setopt($curlobj, CURLOPT_RETURNTRANSFER, true); // 执行之后不直接打印出来// 设置HTTPS支持date_default_timezone_set('PRC'); // 使用Cookie时,必须先设置时区curl_setopt($curlobj, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查从证书中检查SSL加密算法是否存在curl_setopt($curlobj, CURLOPT_SSL_VERIFYHOST, 2); // $output=curl_exec($curlobj); // 执行curl_close($curlobj); // 关闭cURLecho $output;
0 0
- php 中的 curl 函数
- PHP中的cURL函数
- PHP中的curl函数
- php中的curl 网页抓取函数
- PHP函数->CURL
- php中curl函数
- php curl函数参考
- php curl函数
- php curl , fsockopen 函数
- php curl函数理解
- PHP内置函数--CURL
- PHP中的CURL函数库
- PHP中的CURL函数库
- PHP中的CURL
- php中的curl简述
- PHP中的cURL
- PHP中的数据传输CURL
- PHP中的数据传输CURL
- ubuntu与centos安装tensorflow经验总结
- Machine Learning Notebook - Week 1 - Andrew Ng
- [10]全局属性和其他
- 1
- 知识库--ApplicationFilterConfig+FilterConfig实践(54)
- PHP中的curl函数
- 一些概念
- bzoj4597 [Shoi2016]随机序列
- 队列
- thinkphp5.0 在nginx下的配置
- android
- struts2图片上传并且显示(注意乱码)
- 实现主函数将年、月、日(结构体类型)传递给days函数,days函数计算该年该月该日是该年的第几天并传回主函数输
- Codeforces Round #386 (Div. 2) A+B+C+D!