https://mp.weixin.qq.com/s/8luqMEd8xt8oJxFLLCU1XA

文章正文

cURL是利用url语法规定传输文件和数据的工具。php中有curl拓展,一般用来实现网络抓取,模拟发送get   post请求,文件上传。

  在php中建立curl的基本步骤如下:

  1 初始化        2 设置选项,包括url        3  执行并获取结果     4 释放curl句柄。

  在工作和学习中,我也是时常用的curl。由于在使用curl设置选项时,各种选项比较难以记忆,需要参考,故在此记录下常用的一些例子,以便后来参考。

实例一 : 抓取网页数据(以拉手网开放api为例,也是get请求)

<?php
header("Content-type: text/html; charset=utf-8");
$ch = curl_init();//初始化/*============开始设置curl各种选项================*/
curl_setopt($ch, CURLOPT_URL, "http://open.lashou.com/opendeals/lashou/city.xml");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);$html = curl_exec($ch);//执行句柄,获取返回内容

curl_close($ch);//释放句柄echo $html
?>

如果用这种方法发get请求,参数附加到url后面即可

如curl_setopt($ch, CURLOPT_URL, "http://localhost/tqj/date/p822.php?name=yyyyy");

实例 2  利用curl发送post请求

<?php
$uri = "http://localhost/tqj/date/p822.php";// post参数数组
$data = array ('name' => 'tianquanjun','password' => 'tianquanjun',
);//初始化
$ch = curl_init ();//各种项设置,网上参考而来,可以查看php手册,自己设置
curl_setopt ( $ch, CURLOPT_URL, $uri );
curl_setopt ( $ch, CURLOPT_POST, 1 );//post方式
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );//执行
$return = curl_exec ( $ch );
//释放
curl_close ( $ch );print_r($return);
?>

实例三  :curl 过程调试与错误信息处理

<?php
$uri = "http://localhost/tqj/date/p822.php";// post参数数组
$data = array ('name' => 'tianquanjun','password' => 'tianquanjun',
);//初始化
$ch = curl_init ();//各种项设置,网上参考而来,可以查看php手册,自己设置
curl_setopt ( $ch, CURLOPT_URL, $uri );
curl_setopt ( $ch, CURLOPT_POST, 1 );//post方式
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );//执行
$return = curl_exec ( $ch );//容错机制
if($return === false){var_dump(curl_error($ch));}//curl_getinfo()获取各种运行中信息,便于调试
$info = curl_getinfo($ch);echo "执行时间".$info['total_time'].PHP_EOL;//释放
curl_close ( $ch );print_r($return);
?>

其中利用curl_error()获取错误信息,curl_getinfo()获取运行相关信息。

实例四  上传图片,获取返回信息。

跨域上传图片,同时获取返回信息,这个就能大显身手。和post比较像,注意文件之前加一个@符号

<?php
$uri = "http://localhost/tqj/date/p822.php";// post参数数组
$data = array ('author' => 'tianquanjun','upload' => '@C:\Users\tianquanjun.DANGDANG\Pictures\a.jpg',
);//初始化
$ch = curl_init ();//各种项设置,网上参考而来,可以查看php手册,自己设置
curl_setopt ( $ch, CURLOPT_URL, $uri );
curl_setopt ( $ch, CURLOPT_POST, 1 );//post方式
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );//执行
$return = curl_exec ( $ch );//容错机制
if($return === false){var_dump(curl_error($ch));}//curl_getinfo()获取各种运行中信息,便于调试
$info = curl_getinfo($ch);echo "执行时间".$info['total_time'].PHP_EOL;//释放
curl_close ( $ch );print_r($return);
?>

实例五 : curl批处理。

  curl有一个高级特性,批处理句柄。允许打开多个curl链接。 

  批处理就是打开多个curl句柄,并把这些句柄指派给一个批处理句柄,然后在while循环里等待处理完毕。curl_multi_exec()算是称得上多线程处理,不过它还是属于异步的范畴。

<?php
header("Content-type: text/html; charset=gbk");
$urls=array('http://www.baidu.com','http://www.qq.com/');
$ch=array();
//批处理句柄
$mh=curl_multi_init();//打开多个curl句柄,并指派给一个批处理句柄
$ch[0]=curl_init($urls[0]);
$ch[1]=curl_init($urls[1]);
for($i=0;$i<2;$i++)
{
curl_setopt($ch[$i],CURLOPT_RETURNTRANSFER,1);
curl_multi_add_handle($mh,$ch[$i]);}
$running = NULL;
do{usleep(10000);curl_multi_exec($mh,$running);//实现批处理,可以看做curl多线程,实际是异步范畴
}while($running>0);
$res=array();
for($j=0;$j<2;$j++)
{$res[$j]=curl_multi_getcontent($ch[$j]);
}//关闭句柄
for($k=0;$k<2;$k++)
{curl_multi_remove_handle($mh,$ch[$k]);
}
curl_multi_close($mh);print_r($res);?>

基本算是列举了常用的一些实例。要想灵活运用curl,还是得熟悉curl的各个设置项,这些设置项才是curl的灵魂。

==========================亲测效果===============================================

getwether.php

<?php
$data = "theCityName=邯郸";
$uri = "http://www.webxml.com.cn/WebServices/WeatherWebService.asmx/getWeatherbyCityName";//初始化
$obj = curl_init();//设置
curl_setopt($obj, CURLOPT_URL, $uri);
curl_setopt($obj, CURLOPT_HEADER, 0);  //将头文件的信息作为数据流输出
curl_setopt($obj, CURLOPT_RETURNTRANSFER, 1); //执行后直接返回
curl_setopt($obj, CURLOPT_POST, 1);  //post 方式
curl_setopt($obj, CURLOPT_POSTFIELDS, $data);  //发送post请求参数
curl_setopt($obj,CURLOPT_USERAGENT, " user-agent:Mozilla/5.0 (Windows NT 6.1; rv:62.0) Gecko/20100101 Firefox/62.0");//浏览器头信息
curl_setopt($obj, CURLOPT_HTTPHEADER, array("application/x-www-form-urlencoded;charset=utf-8", "Content-Length:" . strlen($data))); //发送header头信息$opt = curl_exec($obj);if ($opt === false) {var_dump(curl_error($obj));
} else {var_dump(curl_errno($obj));//int(0)$info = curl_getinfo($obj);echo '执行时间:'.$info['total_time'] . PHP_EOL;
//    echo $opt;print_r($opt);
}curl_close($obj);

var_dump(curl_errno($obj));//int(0)        返回最后一次的错误号var_dump(curl_error($obj)); //string(0) "" 返回一个保护当前会话最近一次错误的字符串

在cmd命令行中输入:

php -f getwether.php >wether.txt

int(0)
执行时间:0.187
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://WebXml.com.cn/"><string>河北</string><string>邯郸</string><string>53892</string><string>53892.jpg</string><string>2018/10/17 22:45:23</string><string>8℃/19℃</string><string>10月17日 多云</string><string>北风小于3级</string><string>1.gif</string><string>1.gif</string><string>今日天气实况:气温:12℃;风向/风力:北风 1级;湿度:77%;紫外线强度:弱。空气质量:中。</string><string>紫外线指数:弱,辐射较弱,涂擦SPF12-15、PA+护肤品。
健臻·血糖指数:易波动,血糖易波动,注意监测。
穿衣指数:较舒适,建议穿薄外套或牛仔裤等服装。
洗车指数:较适宜,无雨且风力较小,易保持清洁度。
空气污染指数:中,易感人群应适当减少室外活动。
</string><string>8℃/18℃</string><string>10月18日 多云</string><string>南风小于3级</string><string>1.gif</string><string>1.gif</string><string>9℃/19℃</string><string>10月19日 多云</string><string>南风小于3级</string><string>1.gif</string><string>1.gif</string><string>邯郸市是河北省最古老的城市,也是我国古代著名的城邑。早在2000多年前的春秋初期,就有邯郸的建制,当时邯郸已是一个人口聚居的城市。战国时作为赵国都城历经158年,秦统一后分别设邯郸县、邯郸郡。当时的邯郸经济昌盛、繁荣发达,与长安、洛阳、开封、成都同称五大都城。邯郸位于河北省南部,地处太行山东麓、淦阳河上,是晋冀鲁豫四省接壤的腹地。邯郸市位于太行山东麓,属暖温带半湿润半干旱大陆季风性气候。特点是四季分明,雨量适中,秋、春两季短,冬、夏两季长。邯郸市的自然环境得天独厚,西倚太行山,东临滏阳河,地势西北高、东南低,中部丘陵起伏,盆地交错;并有沁河、渚河、输元河流经市区(皆属滏阳河支流),丰富的水利资源为农业生产提供了优良的条件。景观:黄梁梦吕仙祠、永年君臣上寿石刻、学步桥、磁州窑、古邺城、兰陵王墓、天子冢、响堂山石窟、磁山古文化遗址等。</string>
</ArrayOfString>

====================爬去豆瓣电影api==================================

<?php$uri="https://api.douban.com/v2/movie/in_theaters";
$data="city=邯郸&start=0&count=3";$obj=curl_init();curl_setopt($obj,CURLOPT_URL,$uri);
curl_setopt($obj,CURLOPT_RETURNTRANSFER,1);
curl_setopt($obj,CURLOPT_POSTFIELDS,$data);
curl_setopt($obj,CURLOPT_POST,1);
curl_setopt($obj,CURLOPT_SSL_VERIFYPEER,0);
$opt=curl_exec($obj);if($opt===false){var_dump(curl_error($obj));
}else{$info=curl_getinfo($obj);/* echo '<pre>';print_r($info);echo '</pre>';*/$movies=json_decode($opt,true);echo count($movies);echo '<pre>';print_r($movies);echo '</pre>';
}
curl_close($obj);

结果:

5Array
([count] => 3[start] => 0[total] => 21[subjects] => Array([0] => Array([rating] => Array([max] => 10[average] => 8.1[stars] => 40[min] => 0)[genres] => Array([0] => 剧情[1] => 动作[2] => 犯罪)[title] => 无双[casts] => Array([0] => Array([alt] => https://movie.douban.com/celebrity/1044899/[avatars] => Array([small] => https://img1.doubanio.com/view/celebrity/s_ratio_celebrity/public/p35678.jpg[large] => https://img1.doubanio.com/view/celebrity/s_ratio_celebrity/public/p35678.jpg[medium] => https://img1.doubanio.com/view/celebrity/s_ratio_celebrity/public/p35678.jpg
                                        )[name] => 周润发[id] => 1044899)[1] => Array([alt] => https://movie.douban.com/celebrity/1041390/[avatars] => Array([small] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p49475.jpg[large] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p49475.jpg[medium] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p49475.jpg
                                        )[name] => 郭富城[id] => 1041390)[2] => Array([alt] => https://movie.douban.com/celebrity/1016668/[avatars] => Array([small] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p146.jpg[large] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p146.jpg[medium] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p146.jpg
                                        )[name] => 张静初[id] => 1016668))[collect_count] => 325710[original_title] => 無雙[subtype] => movie[directors] => Array([0] => Array([alt] => https://movie.douban.com/celebrity/1014716/[avatars] => Array([small] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p3555.jpg[large] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p3555.jpg[medium] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p3555.jpg
                                        )[name] => 庄文强[id] => 1014716))[year] => 2018[images] => Array([small] => https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2535096871.jpg[large] => https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2535096871.jpg[medium] => https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2535096871.jpg
                        )[alt] => https://movie.douban.com/subject/26425063/[id] => 26425063)[1] => Array([rating] => Array([max] => 10[average] => 7.4[stars] => 40[min] => 0)[genres] => Array([0] => 剧情[1] => 动作[2] => 武侠)[title] => 影[casts] => Array([0] => Array([alt] => https://movie.douban.com/celebrity/1274235/[avatars] => Array([small] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p805.jpg[large] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p805.jpg[medium] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p805.jpg
                                        )[name] => 邓超[id] => 1274235)[1] => Array([alt] => https://movie.douban.com/celebrity/1004856/[avatars] => Array([small] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1415690807.36.jpg[large] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1415690807.36.jpg[medium] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1415690807.36.jpg
                                        )[name] => 孙俪[id] => 1004856)[2] => Array([alt] => https://movie.douban.com/celebrity/1275564/[avatars] => Array([small] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1366015827.84.jpg[large] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1366015827.84.jpg[medium] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1366015827.84.jpg
                                        )[name] => 郑恺[id] => 1275564))[collect_count] => 255137[original_title] => 影[subtype] => movie[directors] => Array([0] => Array([alt] => https://movie.douban.com/celebrity/1054398/[avatars] => Array([small] => https://img1.doubanio.com/view/celebrity/s_ratio_celebrity/public/p568.jpg[large] => https://img1.doubanio.com/view/celebrity/s_ratio_celebrity/public/p568.jpg[medium] => https://img1.doubanio.com/view/celebrity/s_ratio_celebrity/public/p568.jpg
                                        )[name] => 张艺谋[id] => 1054398))[year] => 2018[images] => Array([small] => https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2530513100.jpg[large] => https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2530513100.jpg[medium] => https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2530513100.jpg
                        )[alt] => https://movie.douban.com/subject/4864908/[id] => 4864908)[2] => Array([rating] => Array([max] => 10[average] => 5.1[stars] => 25[min] => 0)[genres] => Array([0] => 喜剧)[title] => 李茶的姑妈[casts] => Array([0] => Array([alt] => https://movie.douban.com/celebrity/1363857/[avatars] => Array([small] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1519453932.46.jpg[large] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1519453932.46.jpg[medium] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1519453932.46.jpg
                                        )[name] => 黄才伦[id] => 1363857)[1] => Array([alt] => https://movie.douban.com/celebrity/1350408/[avatars] => Array([small] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1437031126.82.jpg[large] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1437031126.82.jpg[medium] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1437031126.82.jpg
                                        )[name] => 艾伦[id] => 1350408)[2] => Array([alt] => https://movie.douban.com/celebrity/1350407/[avatars] => Array([small] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1437031175.04.jpg[large] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1437031175.04.jpg[medium] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1437031175.04.jpg
                                        )[name] => 宋阳[id] => 1350407))[collect_count] => 112833[original_title] => 李茶的姑妈[subtype] => movie[directors] => Array([0] => Array([alt] => https://movie.douban.com/celebrity/1313050/[avatars] => Array([small] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1518587170.5.jpg[large] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1518587170.5.jpg[medium] => https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p1518587170.5.jpg
                                        )[name] => 吴昱翰[id] => 1313050))[year] => 2018[images] => Array([small] => https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2533384240.jpg[large] => https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2533384240.jpg[medium] => https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2533384240.jpg
                        )[alt] => https://movie.douban.com/subject/27092785/[id] => 27092785))[title] => 正在上映的电影-邯郸
)

curl_getinfo函数获得信息:

=============================================curl获得慕课用户信息=================================================

<?php
//C:\phpStudy\PHPTutorial\WWW\curl

date_default_timezone_set('PRC');$data="username=用户名&password=密码&remember=1";
//15510485900 

$httpHeader=["Content-Type: application/x-www-form-urlencoded; charset=utf-8","Content-length:".strlen($data)];
$obj=curl_init();
curl_setopt($obj,CURLOPT_URL,"https://www.imooc.com/user/login");
//curl_setopt($obj,CURLOPT_URL,"https://login.sina.com.cn/sso/login.php?client=ssologin.js(v1.4.19)");
curl_setopt($obj,CURLOPT_RETURNTRANSFER,1);curl_setopt($obj,CURLOPT_COOKIESESSION,true);
curl_setopt($obj,CURLOPT_COOKIEFILE,'cookiefile');
curl_setopt($obj,CURLOPT_COOKIEJAR,'cookiefile');
curl_setopt($obj,CURLOPT_COOKIE,session_name().'='.session_id());curl_setopt($obj,CURLOPT_HEADER,0);
curl_setopt($obj,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($obj,CURLOPT_SSL_VERIFYPEER,false);//不需要认证
curl_setopt($obj,CURLOPT_POST,1);
curl_setopt($obj,CURLOPT_POSTFIELDS,$data);
curl_setopt($obj,CURLOPT_HTTPHEADER,$httpHeader);
curl_setopt($obj, CURLOPT_TIMEOUT, 300);
$return=curl_exec($obj);if($return===false){var_dump(curl_error($obj));
}else{var_dump(curl_error($obj));var_dump(curl_errno($obj));
}
//echo $return;
//curl_close($obj);
//echo 'ceshi ';
//die;
curl_setopt($obj,CURLOPT_URL,"https://www.imooc.com/u/5510462/courses");
//curl_setopt($obj,CURLOPT_URL,"https://weibo.com/5549088156/profile?topnav=1&wvr=6&is_all=1");

curl_setopt($obj,CURLOPT_POST,0);
curl_setopt($obj,CURLOPT_HTTPHEADER,array("Content-type:text/xml;"));
$opt=curl_exec($obj);/*if($opt===false){var_dump(curl_error($obj));
}else{var_dump(curl_error($obj));var_dump(curl_errno($obj));
}*/curl_close($obj);echo $opt;

结果:

string(0) ""
int(0)<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>青春阳光爱伟的课程</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
<meta name="renderer" content="webkit" /><meta property="qc:admins" content="77103107776157736375" />
<meta property="wb:webmaster" content="c4f857219bfae3cb" />
<meta http-equiv="Access-Control-Allow-Origin" content="*" />
<meta http-equiv="Cache-Control" content="no-transform " />
<meta http-equiv="Cache-Control" content="no-siteapp" />
<link rel="dns-prefetch" href="//www.imooc.com" />
<link rel="dns-prefetch" href="//img.imooc.com" />
<link rel="dns-prefetch" href="//img.mukewang.com" />
<link rel="apple-touch-icon" sizes="76x76" href="/static/img/common/touch-icon-ipad.png">
<link rel="apple-touch-icon" sizes="120x120" href="/static/img/common/touch-icon-iphone-retina.png">
<link rel="apple-touch-icon" sizes="152x152" href="/static/img/common/touch-icon-ipad-retina.png">
<meta name="keywords" content="慕课网,慕课官网,MOOC,移动开发,IT技能培训,免费编程视频,php开发教程,web前端开发,在线编程学习,html5视频教程,css教程,ios开发培训,安卓开发教程" />
<meta name="description" content="慕课网(IMOOC)是学习编程最简单的免费平台。慕课网提供了丰富的移动端开发、php开发、web前端、html5教程以及css3视频教程等课程资源。它富有交互性及趣味性,并且你可以和朋友一起编程。" /><link rel="stylesheet" href="/static/moco/v1.0/dist/css/moco.min.css?t=201810221819" type="text/css" /><link rel="stylesheet" href="/static/lib/swiper/swiper-3.4.2.min.css?t=201810221819"><script type="text/javascript">eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1;};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p;}('!4(){3 a={};3 c=0;3 5=[{d:\'//o.q.g/o/p/K/J.r\',6:0},{d:\'//p.q.g/I/L-O.r\',6:0}];3 w=4(){3 j,s=e N("(^| )"+"k=([^;]*)(;|$)");8(j=u.l.M(s)){m H(j[2])}E{m z}};3 y=4(t){3 n=w();3 b=e F();b.G(b.D()+13*v*v*10);u.l="k="+t+";14="+b.R()+";S=/;P=Q.g";8(t&&t!=n){X.U.V()}};3 C=4(i){3 7=e W();7.T=4(){12(a[i]);a[i]=z;9(i,0)};7.Z=4(){9(i,1)};a[i]=11(4(){7.B="";9(i,1)},Y);7.B=5[i].d};3 9=4(x,6){c++;5[x].6=6;8(c==5.f){3 h=0;A(3 i=0;i<5.f;i++){8(5[i].6==1){h=1}}y(h)}};A(3 i=0;i<5.f;i++){C(i)}}()',62,67,'|||var|function|urls|flag|imgobj|if|callback|timer|exp|count|url|new|length|com|error||arr|IMCDNS|cookie|return|_0|static|img|mukewang|png|reg||document|60|getcookie|index|setcookie|null|for|src|checkCdn|getTime|else|Date|setTime|unescape|images|logo|common|unknow|match|RegExp|80|domain|imooc|toGMTString|path|onload|location|reload|Image|window|3000|onerror|1000|setTimeout|clearTimeout|24|expires'.split('|'),0,{}))</script><script type="text/javascript">var OP_CONFIG={"module":"u","page":"courses"};
var isLogin = 0;
var is_choice = "";
var seajsTimestamp="v=201810221819";
var _msg_unread = 0;
var _not_unread = 0;
var _cart_num = 0;
</script><link rel="stylesheet" href="/static/lib/layer/1.6.0/skin/layer.css" /><link rel="stylesheet" href="//static.mukewang.com/static/css/??base.css,common/common-less.css?t=2.5,u/u_common_new-less.css,u/courses/time-less.css?v=201810221819" type="text/css" />
</head><body ><div id="header"><div class="page-container" id="nav"  ><div id="logo" class="logo"><a href="/" target="_self" class="hide-text" title="首页">慕课网</a></div><button type="button" class="navbar-toggle visible-xs-block js-show-menu" ><i class="icon-menu"></i></button><ul class="nav-item"><li class="set-btn visible-xs-block"><a href="/user/newlogin" target="_self">登录</a> / <a href="/user/newsignup" target="_self">注册</a></li><li><a href="/course/list"  target="_self">免费课程</a></li>  <li><a href="//coding.imooc.com" target="_self">实战课程</a></li>         <li><a href="//class.imooc.com" class="" target="_self">就业班</a></li><li><a href="/wenda"  target="_self">猿问</a></li><li><a href="/article"  target="_self">手记</a></li><li><a href="//job.imooc.com" class="program-nav" target="_self">猿聘<i class="icn-new"></i></a></li></ul><div id="login-area"><ul class="header-unlogin clearfix"><li class="app-load" id="js-app-load"><a href="//www.imooc.com/mobile/app" target="_blank" style="width:60px;">下载APP</a><div class="app-load-box clearfix js-load-box"><img src="/static/img/common/appload.png" class="l"><div class="r"><p>扫描下载慕课网APP</p><a href="https://itunes.apple.com/cn/app/mu-ke-wang/id722179140?mt=8" target="_blank"><i class="icon-apple"></i>App Store下载</a><a href="//www.imooc.com/mobile/mukewang.apk" target="_blank"><i class="icon-android"></i>Android下载</a></div></div></li><li class="shop-cart" id="shop-cart"><a href="//order.imooc.com/pay/cart" class="shop-cart-icon" target="_blank"><span class="icon-shopping-cart js-endcart"></span><span>购物车</span><span class="shopping_icon js-cart-num" data-ordernum="0"  data-cartnum="0" style='display: none'>0</span></a><div class="my-cart" id="js-my-cart"></div></li>             <li class="header-signin"><a href="//www.imooc.com/user/newlogin" id="js-signin-btn">登录</a> / <a href="//www.imooc.com/user/newsignup" id="js-signup-btn">注册</a></li>             </ul></div><div class='search-warp clearfix' style='min-width: 32px; height: 72px;'><div class="pa searchTags" ><a href="//class.imooc.com/sc/20" target="_blank">前端入门</a><a href="//class.imooc.com/sc/18" target="_blank">Java基础</a></div><div class="search-area" data-search="top-banner"><input class="search-input" data-suggest-trigger="suggest-trigger"      type="text" autocomplete="off"><input type='hidden' class='btn_search' data-search-btn="search-btn" /><ul class="search-area-result" data-suggest-result="suggest-result"></ul></div><div class='showhide-search' data-show='no'><i class='icon-search'></i></div></div></div>
</div><!-- 新人有礼入口 -->
<a class="newcomer index hide" href="//www.imooc.com/act/newcomer" target="_blank"><i class="js-close imv2-close"></i></a><div class="bindHintBox js-bindHintBox hide"><div class="pr">为了账号安全,请及时绑定邮箱和手机<a href="/user/setbindsns" class="ml20 color-red" target="_blank">立即绑定</a><button  class="closeBindHint js-closeBindHint" type="button"></button><div class="arrow"> </div></div>
</div><div id="main"><div class="bg-other user-head-info"><div class="user-info clearfix"><div class="user-pic" data-is-fans="" data-is-follows=""><div class="user-pic-bg"><img class='img' src="//img3.mukewang.com/533e4c420001b2e502000200-140-140.jpg" alt=""/></div><!--user-pic-big end-->            </div><div class="user-info-right"><h3 class="user-name clearfix"><span>青春阳光爱伟</span></h3><!--25--><p class="about-info"><span>男</span><span>北京</span><span>PHP开发工程师</span><a class="more-user-info"><i class="imv2-arrow2_d"></i>更多信息</a></p></div><div class="user-sign hide"><p class="user-desc" title="努力学习">努力学习</p></div><div class="study-info clearfix"><div class="item follows"><div class="u-info-learn" title="学习时长167小时26分" style="cursor:pointer;"><em>167h</em><span>学习时长 </span></div></div><div class="item follows"><em>3532</em><span>经验</span></div><div class="item follows"><em>2</em><span>积分</span></div><div class="item follows"><a href='/u/5510462/follows'><em>2</em></a><span>关注</span></div><div class="item follows"><a href='/u/5510462/fans'><em>0</em></a><span>粉丝</span></div><div class="item js-u-add-follow hide" data-uid='5510462' data-type="1" ><a class="status-btn add-follow "><i class="icon-add">+</i>关注</a></div><div class="item js-u-already-follow hide" data-uid='5510462' data-type="2"><a class="status-btn already-follow"><i class="imv2-check"></i>已关注</a></div><div class="item js-fans-msg hide" data-uid='5510462' data-type="3"><a class="status-btn add-follow" >私信</a></div></div><!--.study-info end--></div><!-- .user-info end -->
</div><!-- .big-pic end -->
<div class="wrap"><div class="slider"><ul><li><a href="/u/5510462" ><i class="icon-home"></i><span>动态圈</span><b class="icon-drop_right"></b></a></li><li><a href="/u/5510462/courses" class="active"><i class="icon-tick"></i><span>免费课程</span><b class="icon-drop_right"></b></a></li>     <li><a href="/u/5510462/plans" ><i class="imv2-path"></i><span>职业路径</span><b class="icon-drop_right"></b></a></li><li><a href="/u/5510462/bbs" ><i class="icon-yuanwen"></i><span>猿问</span><b class="icon-drop_right"></b></a></li><li><a href="/u/5510462/articles" ><i class="icon-blog"></i><span>手记</span><b class="icon-drop_right"></b></a></li></ul>
</div><!-- .slider end -->    <div class="u-container"><div class="c-tab clearfix"><div class="tool-left l"><a href="/u/5510462/courses" class="sort-item active">最近学习</a></div><div class="tool-right r"><div class="tool-all"><span id="js-columall" class="tool-item"><span>全部课程</span><i class="tool-item icon icon-drop_down"></i></span><ul id="js-columbd" class="all-cont" style="display:none;"><li><a data-id="0" href="/u/5510462/courses?sort=time&skill_id=0">全部课程</a></li><li><a data-id="1" href="/u/5510462/courses?sort=time&skill_id=1">PHP</a></li><li><a data-id="220" href="/u/5510462/courses?sort=time&skill_id=220">Java</a></li><li><a data-id="468" href="/u/5510462/courses?sort=time&skill_id=468">Linux</a></li><li><a data-id="952" href="/u/5510462/courses?sort=time&skill_id=952">MySQL</a></li><li><a data-id="1118" href="/u/5510462/courses?sort=time&skill_id=1118">Python</a></li><li><a data-id="4917" href="/u/5510462/courses?sort=time&skill_id=4917">Redis</a></li><li><a data-id="5272" href="/u/5510462/courses?sort=time&skill_id=5272">爬虫</a></li><li><a href="/u/5510462/courses?sort=time">全部课程</a></li></ul></div></div>
</div><div class="js-course-list my-space-course study-tl"><div class="clearfix tl-item  tl-item-first"><span class="time"><b>2018</b><em>10月22日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="132" data-uid="5510462"><div class="course-list-img l"><a href="/learn/132" target="_blank"><img width="200" height="113" alt="PHP中的数据传输神器cURL" src="//img.mukewang.com/570762be0001898506000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/132" target="_blank">PHP中的数据传输神器cURL</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学70%</span><span class="i-mid span-common">用时 5小时 7分</span><span class="i-right span-common">学习至2-4 用cURL登陆慕课网并下载个人空间页面</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/132">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/132/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/132/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item "><span class="time"><b>2018</b><em>10月14日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="68" data-uid="5510462"><div class="course-list-img l"><a href="/learn/68" target="_blank"><img width="200" height="113" alt="JSON应用场景与实战" src="//img.mukewang.com/578386af00010eea06000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/68" target="_blank">JSON应用场景与实战</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学0%</span><span class="i-mid span-common">用时 1分</span><span class="i-right span-common">学习至1-4 练习</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/68">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/68/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/68/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item "><span class="time"><b>2018</b><em>10月10日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="845" data-uid="5510462"><div class="course-list-img l"><a href="/learn/845" target="_blank"><img width="200" height="113" alt="SVN从入门到放弃" src="//img.mukewang.com/5934bac20001a5c906000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/845" target="_blank">SVN从入门到放弃</a><span class="i-new">更新至6-1</span><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学19%</span><span class="i-mid span-common">用时53分</span><span class="i-right span-common">学习至6-1 常见坑与总结</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/845">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/845/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/845/questions">问答 <i>0</i></a></span></div></div></li><li class="course-one" data-courseid="109" data-uid="5510462"><div class="course-list-img l"><a href="/learn/109" target="_blank"><img width="200" height="113" alt="版本管理工具介绍---SVN篇" src="//img.mukewang.com/570360980001a2de06000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/109" target="_blank">版本管理工具介绍---SVN篇</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学43%</span><span class="i-mid span-common">用时21分</span><span class="i-right span-common">学习至4-3 SVN 常见问题 Ⅲ</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/109">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/109/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/109/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item "><span class="time"><b>2018</b><em>09月09日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="533" data-uid="5510462"><div class="course-list-img l"><a href="/learn/533" target="_blank"><img width="200" height="113" alt="MySQL5.7版本新特性" src="//img.mukewang.com/572afe280001c13406000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/533" target="_blank">MySQL5.7版本新特性</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学0%</span><span class="i-mid span-common">用时 0分</span><span class="i-right span-common">学习至1-3 旧版本支持为表增加计算列演练</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/533">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/533/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/533/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item "><span class="time"><b>2018</b><em>08月20日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="177" data-uid="5510462"><div class="course-list-img l"><a href="/learn/177" target="_blank"><img width="200" height="113" alt="初识Python" src="//img.mukewang.com/540e57300001d6d906000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/177" target="_blank">初识Python</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学6%</span><span class="i-mid span-common">用时 1小时44分</span><span class="i-right span-common">学习至4-7 Python之创建tuple</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/177">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/177/codes">代码 <i>1</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/177/questions">问答 <i>0</i></a></span></div></div></li><li class="course-one" data-courseid="799" data-uid="5510462"><div class="course-list-img l"><a href="/learn/799" target="_blank"><img width="200" height="113" alt="RBAC打造通用web管理权限" src="//img.mukewang.com/5885a1f5000113a506000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/799" target="_blank">RBAC打造通用web管理权限</a><span class="i-new">更新至5-1</span><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学12%</span><span class="i-mid span-common">用时 5分</span><span class="i-right span-common">学习至2-1 常见的权限模型</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/799">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/799/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/799/questions">问答 <i>0</i></a></span></div></div></li><li class="course-one" data-courseid="898" data-uid="5510462"><div class="course-list-img l"><a href="/learn/898" target="_blank"><img width="200" height="113" alt="PHP中的会话控制" src="//img.mukewang.com/59c3917900011b8106000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/898" target="_blank">PHP中的会话控制</a><span class="i-new">更新至3-5</span><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学95%</span><span class="i-mid span-common">用时12小时 9分</span><span class="i-right span-common">学习至3-5 自定义会话管理器</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/898">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/898/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/898/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item "><span class="time"><b>2018</b><em>08月16日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="887" data-uid="5510462"><div class="course-list-img l"><a href="/learn/887" target="_blank"><img width="200" height="113" alt="PHP-面向对象" src="//img.mukewang.com/59acb1650001adce06000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/887" target="_blank">PHP-面向对象</a><span class="i-new">更新至2-9</span><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学82%</span><span class="i-mid span-common">用时 2小时27分</span><span class="i-right span-common">学习至2-9 接口类和抽象类以及设计模式</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/887">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/887/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/887/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item "><span class="time"><b>2018</b><em>08月15日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="184" data-uid="5510462"><div class="course-list-img l"><a href="/learn/184" target="_blank"><img width="200" height="113" alt="PHP面向对象编程" src="//img.mukewang.com/572b067f00019abf06000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/184" target="_blank">PHP面向对象编程</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学100%</span><span class="i-mid span-common">用时 9小时57分</span><span class="i-right span-common">学习至6-1 课程总结</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/184">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/184/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/184/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item "><span class="time"><b>2018</b><em>08月08日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="1017" data-uid="5510462"><div class="course-list-img l"><a href="/learn/1017" target="_blank"><img width="200" height="113" alt="Python最火爬虫框架Scrapy入门与实践" src="//img.mukewang.com/5b5188020001677306000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/1017" target="_blank">Python最火爬虫框架Scrapy入门与实践</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学0%</span><span class="i-mid span-common">用时 0分</span><span class="i-right span-common">学习至2-8 保存数据</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/1017">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/1017/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/1017/questions">问答 <i>0</i></a></span></div></div></li><li class="course-one" data-courseid="458" data-uid="5510462"><div class="course-list-img l"><a href="/learn/458" target="_blank"><img width="200" height="113" alt="django初体验" src="//img.mukewang.com/5705d21e0001e4f106000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/458" target="_blank">django初体验</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学0%</span><span class="i-mid span-common">用时 0分</span><span class="i-right span-common">学习至3-1 django初体检</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/458">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/458/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/458/questions">问答 <i>0</i></a></span></div></div></li><li class="course-one" data-courseid="317" data-uid="5510462"><div class="course-list-img l"><a href="/learn/317" target="_blank"><img width="200" height="113" alt="python进阶" src="//img.mukewang.com/5705b7350001d59b06000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/317" target="_blank">python进阶</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学0%</span><span class="i-mid span-common">用时10分</span><span class="i-right span-common">学习至3-4 python之使用__future__</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/317">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/317/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/317/questions">问答 <i>0</i></a></span></div></div></li><li class="course-one" data-courseid="702" data-uid="5510462"><div class="course-list-img l"><a href="/learn/702" target="_blank"><img width="200" height="113" alt="轻松学会Laravel-高级篇" src="//img.mukewang.com/581bec530001202106000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/702" target="_blank">轻松学会Laravel-高级篇</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学0%</span><span class="i-mid span-common">用时 1分</span><span class="i-right span-common">学习至5-1 Laravel中的文件上传</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/702">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/702/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/702/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item "><span class="time"><b>2018</b><em>08月07日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="596" data-uid="5510462"><div class="course-list-img l"><a href="/learn/596" target="_blank"><img width="200" height="113" alt=" PHP第三方登录—QQ登录" src="//img.mukewang.com/56a0932200014c4d06000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/596" target="_blank"> PHP第三方登录—QQ登录</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学87%</span><span class="i-mid span-common">用时 3小时36分</span><span class="i-right span-common">学习至5-2 课程总结</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/596">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/596/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/596/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item "><span class="time"><b>2018</b><em>08月01日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="623" data-uid="5510462"><div class="course-list-img l"><a href="/learn/623" target="_blank"><img width="200" height="113" alt="PHP第三方登录—微博登录" src="//img.mukewang.com/56e1321f0001550c06000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/623" target="_blank">PHP第三方登录—微博登录</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学93%</span><span class="i-mid span-common">用时11小时12分</span><span class="i-right span-common">学习至4-1 注意事项与课程总结</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/623">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/623/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/623/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item "><span class="time"><b>2018</b><em>07月30日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="557" data-uid="5510462"><div class="course-list-img l"><a href="/learn/557" target="_blank"><img width="200" height="113" alt="PHP第三方登录—OAuth2.0协议" src="//img.mukewang.com/5668dc790001aa2b06000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/557" target="_blank">PHP第三方登录—OAuth2.0协议</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学100%</span><span class="i-mid span-common">用时50分</span><span class="i-right span-common">学习至2-2 步骤一请求OAuth登录页</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/557">笔记 <i>1</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/557/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/557/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item "><span class="time"><b>2018</b><em>07月15日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="416" data-uid="5510462"><div class="course-list-img l"><a href="/learn/416" target="_blank"><img width="200" height="113" alt="Python文件处理" src="//img.mukewang.com/5705b7940001096106000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/416" target="_blank">Python文件处理</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学0%</span><span class="i-mid span-common">用时 0分</span><span class="i-right span-common">学习至4-1 文件练习</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/416">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/416/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/416/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item "><span class="time"><b>2018</b><em>04月20日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="703" data-uid="5510462"><div class="course-list-img l"><a href="/learn/703" target="_blank"><img width="200" height="113" alt="PHP环境LAMP/LNMP安装与配置" src="//img.mukewang.com/57eb9feb000106ec06000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/703" target="_blank">PHP环境LAMP/LNMP安装与配置</a><span class="i-new">更新完毕</span><!-- 更新完毕 --><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学89%</span><span class="i-mid span-common">用时 2小时14分</span><span class="i-right span-common">学习至9-1 LAMP/LNMP安装与配置课程总结</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/703">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/703/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/703/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div><div class="clearfix tl-item  tl-item-last"><span class="time"><b>2018</b><em>04月18日</em></span><div class="course-list course-list-m"><ul class="clearfix"><li class="course-one" data-courseid="697" data-uid="5510462"><div class="course-list-img l"><a href="/learn/697" target="_blank"><img width="200" height="113" alt="轻松学会Laravel-基础篇" src="//img.mukewang.com/57a2bd030001018806000338-240-135.jpg" /></a></div><div class="course-list-cont"><h3 class="study-hd"><a href="/learn/697" target="_blank">轻松学会Laravel-基础篇</a><span class="i-new">更新至8-1</span><!-- 收藏和删除 --></h3><div class="study-points"><span class="i-left span-common">已学4%</span><span class="i-mid span-common">用时 3分</span><span class="i-right span-common">学习至1-2 Laravel的版本选择</span></div><div class="catog-points"><span class="i-left span-common"><a href="/u/5510462/notepad/697">笔记 <i>0</i></a></span><span class="i-mid span-common"><a href="/u/5510462/course/697/codes">代码 <i>0</i></a></span><span class="i-right span-common"><a href="/u/5510462/course/697/questions">问答 <i>0</i></a></span></div></div></li></ul></div></div></div><!-- 分页 --><div class="qa-comment-page"><div class="page"><span class="disabled_page">首页</span><span class="disabled_page">上一页</span><a href="javascript:void(0)" class="active text-page-tag">1</a><a class="text-page-tag" href="/u/5510462/courses?page=2">2</a><a class="text-page-tag" href="/u/5510462/courses?page=3">3</a><a href="/u/5510462/courses?page=2">下一页</a><a href="/u/5510462/courses?page=3">尾页</a></div></div></div><!-- .container end -->
</div><!-- .wrap end--></div><div id="footer" data="u,courses"><div class="waper"><div class="footerwaper clearfix"><div class="followus r"><a class="followus-weixin" href="javascript:;"  target="_blank" title="微信"><div class="flw-weixin-box"></div></a><a class="followus-weibo" href="http://weibo.com/u/3306361973"  target="_blank" title="新浪微博"></a><a class="followus-qzone" href="http://user.qzone.qq.com/1059809142/" target="_blank" title="QQ空间"></a></div><div class="footer_intro l"><div class="footer_link"><ul><li><a href="//www.imooc.com/" target="_blank">网站首页</a></li><li><a href="/index/companytrain" target="_blank" title="企业合作">企业合作</a></li><li><a href="/about/job" target="_blank">人才招聘</a></li><li> <a href="/about/contact" target="_blank">联系我们</a></li><li> <a href="/about/recruit" target="_blank">讲师招募</a></li><li> <a href="/help" target="_blank">帮助中心</a></li><li> <a href="/user/feedback" target="_blank">意见反馈</a></li><li><a href="http://daxue.imooc.com/" target="_blank">慕课大学</a></li><li> <a href="/about/friendly" target="_blank">友情链接</a></li><!--  <li><a href="/corp/index" target="_blank">合作专区</a></li><li><a href="/about/us" target="_blank">关于我们</a></li> --></ul></div><p>Copyright © 2018 imooc.com All Rights Reserved | 京ICP备 12003892号-11 </p></div></div></div>
</div><div id="J_GotoTop" class="elevator"><a href="/user/feedback" class="elevator-msg" target="_blank"><i class="icon-feedback"></i><span class="">意见反馈</span></a><a href="/help" class="elevator-faq" target="_blank"><i class="icon-ques"></i><span class="">帮助中心</span></a><a href="//www.imooc.com/mobile/app" target="_blank" class="elevator-app" ><i class="icon-appdownload"></i><span class="">APP下载</span><div class="elevator-app-box"></div></a><a href="javascript:void(0)" class="elevator-weixin no-goto" id="js-elevator-weixin" ><i class="icon-wxgzh"></i><span class="">官方微信</span><div class="elevator-weixin-box"></div></a><a href="javascript:void(0)" class="elevator-top no-goto" style="display:none" id="backTop"><i class="icon-up2"></i><span class="">返回顶部</span></a>
</div><!--script-->
<script type="text/javascript" src="//moco.imooc.com/static/monitor/error.js"></script>
<script src="/passport/static/scripts/ssologin.js?v=2.0"></script>
<script type="text/javascript" src="/static/sea-modules/seajs/seajs/2.1.1/sea.js"></script>
<script type="text/javascript" src="/static/sea_config.js?v=201810221819"></script>
<script type="text/javascript">seajs.use("/static/page/"+OP_CONFIG.module+"/"+OP_CONFIG.page);</script><style type="text/css">.myClassList table td dl dd { margin-top:88px } #face_panel { z-index:99999999 }</style><div id="layer_sendmsg" class="font-colorg" style="display:none"></div><div style="display: none">
<script type="text/javascript">
var _hmt = _hmt || [];
(function() {var hm = document.createElement("script");hm.src = "https://hm.baidu.com/hm.js?f0cfcccd7b1393990c78efdeebff3968";var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s);
})();
(function (d) {
window.bd_cpro_rtid="rHT4P1c";
var s = d.createElement("script");s.type = "text/javascript";s.async = true;s.src = location.protocol + "//cpro.baidu.com/cpro/ui/rt.js";
var s0 = d.getElementsByTagName("script")[0];s0.parentNode.insertBefore(s, s0);
})(document);
</script>
<script>
(function(){var bp = document.createElement('script');var curProtocol = window.location.protocol.split(':')[0];if (curProtocol === 'https') {bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';        }else {bp.src = 'http://push.zhanzhang.baidu.com/push.js';}var s = document.getElementsByTagName("script")[0];s.parentNode.insertBefore(bp, s);
})();
</script>
</div>
</body>
</html>

==================================curl从ftp下载文件=============================================

<?php
$obj=curl_init();curl_setopt($obj,CURLOPT_URL,"ftp://dele.gotoftp3.com/wwwroot/404.php");
curl_setopt($obj,CURLOPT_HEADER,0);
curl_setopt($obj,CURLOPT_RETURNTRANSFER,1);
curl_setopt($obj,CURLOPT_TIMEOUT,300);//
curl_setopt($obj,CURLOPT_USERPWD,"dee:r9uj");//账号密码

$outfile=fopen('download.php','wb');//保存到本地文件
curl_setopt($obj,CURLOPT_FILE,$outfile);$opt=curl_exec($obj);
fclose($outfile);
if (!curl_errno($obj)){echo 'return:'.$opt;
}else{echo 'curl error:'.curl_error($obj);}
curl_close($obj);

===================================curl 往ftp上传文件===============================================

<?php
$obj=curl_init();
$fp=fopen('baidu.php','r');//文件句柄

curl_setopt($obj,CURLOPT_URL,"ftp://de.gotoftp3.com/wwwroot/baidu.txt");
curl_setopt($obj,CURLOPT_HEADER,0);
curl_setopt($obj,CURLOPT_RETURNTRANSFER,1);
curl_setopt($obj,CURLOPT_TIMEOUT,300);
curl_setopt($obj,CURLOPT_USERPWD,"dele:r9xdguj");//对文件设置 操作,上传的文件,文件的大小
curl_setopt($obj,CURLOPT_UPLOAD,1);
curl_setopt($obj,CURLOPT_INFILE,$fp);
curl_setopt($obj,CURLOPT_INFILESIZE,filesize('baidu.php'));$opt=curl_exec($obj);
fclose($fp);
if (!curl_errno($obj)){echo 'success upload';
}else{echo 'curl error:'.curl_error($obj);
}
curl_close($obj);

==============================curl 下载https中的数据==============================================

<?php
$obj=curl_init();
date_default_timezone_set('PRC');curl_setopt($obj,CURLOPT_URL,"https://moco.imooc.com/captcha/script/captcha.min.js?v=1.0");
curl_setopt($obj,CURLOPT_RETURNTRANSFER,1);curl_setopt($obj,CURLOPT_SSL_VERIFYPEER,0);
$opt=curl_exec($obj);
echo $opt;
curl_close($obj);

php 中使用cURL发送get/post请求,上传图片,批处理相关推荐

  1. 用php批处理图片,PHP中使用CURL发送get/post请求上传图片批处理功能

    cURL是利用url语法规定传输文件和数据的工具.php中有curl拓展,一般用来实现网络抓取,模拟发送get   post请求,文件上传. 在php中建立curl的基本步骤如下: 1.初始化 2. ...

  2. php curl post上传图片,PHP中使用CURL发送get/post请求上传图片批处理功能

    cURL是利用url语法规定传输文件和数据的工具.php中有curl拓展,一般用来实现网络抓取,模拟发送get   post请求,文件上传. 在php中建立curl的基本步骤如下: 1.初始化 2. ...

  3. 使用PHP中的curl发送请求

    使用CURL发送请求的基本流程 使用CURL的PHP扩展完成一个HTTP请求的发送一般有以下几个步骤: 初始化连接句柄: 设置CURL选项: 执行并获取结果: 释放VURL连接句柄. 下面的程序片段是 ...

  4. Linux下在shell中使用curl模拟get,post请求访问接口并设置代理

    在服用端做测试或查找问题的时候,难免要测试接口,测试接口最简单的方法就是利用shell的curl命令来模板get,post请求,每次都用,但是有些参数时间一长就记不清楚了,所以记录一下以备忘 curl ...

  5. AndroidStudio_安卓原生开发_Android中使用HttpURLConnection发送同步Post请求_json数据到springBoot后台---Android原生开发工作笔记139

    这里要注意如果想发送同步请求,而不报错需要在oncreate方法中加上 if (android.os.Build.VERSION.SDK_INT > 9) {StrictMode.ThreadP ...

  6. H5中ajax()方法发送网络数据请求

    一.定义和用法 ajax() 方法通过 HTTP 请求加载远程数据. $.ajax() 返回其创建的 XMLHttpRequest 对象. 语法 jQuery.ajax([settings]) 参数 ...

  7. c语言 Linux CURL发送Http get请求 带参数

    我要请求的是 http://fs.ccic365.com/ccic-fs/IOT/updateData.shtml?sn=111111111&dataTime=2019-01-24 10:45 ...

  8. qt中使用winhttp发送服务端请求

    2019独角兽企业重金招聘Python工程师标准>>> /** * @brief HttpClient::HttpRequest * 发送服务器请求 * @param url * @ ...

  9. shell处理curl返回数据_linux shell中curl 发送post请求json格式问题的处理方法

    今天在linux中使用curl发送一个post请求时,带有json的数据,在发送时发现json中的变量没有解析出来 如下 curl -i -X POST -H 'Content-type':'appl ...

最新文章

  1. HTML页面中使两个div并排显示
  2. JVM 出了问题 EXCEPTION_ACCESS_VIOLATION
  3. 独家 | 带你认识HDFS和如何创建3个节点HDFS集群(附代码案例)
  4. 转贴 DISCUZ7.0 恢复被删除的会员的UID
  5. [导入]Netron研究(二)----容器登场
  6. 子集和问题 算法_子集问题 主要是去重算法
  7. Jenkins进阶系列之——07更改Jenkins的主目录
  8. [wordpress]更新插件时,免去FTP操作
  9. 微鲸科大讯飞、出门问问合作 TA的语音功能怎么样?
  10. jdbc增删改查有哪些步骤_JDBC打造通用增删改方法
  11. Netty源码分析第8章(高性能工具类FastThreadLocal和Recycler)----第7节: 获取异线程释放的对象...
  12. java中io流浅析
  13. matlab源码——政治优化算法(Political Optimizer,PO)
  14. Enumerator yielder.yield 与 Proc.yield 区别
  15. 学习成功:中学生成就梦想的15堂必修课
  16. oracle恢复几天前的数据,恢复oracle数据到以前的某个时间点
  17. CAJViewer的下载与使用
  18. 不改变像素尺寸怎么压缩图片
  19. Android AppWidget详解,内附详细注释
  20. 程序员应知必会的思维模型之 22 奥卡姆剃刀 (Occam‘s Razor)

热门文章

  1. WiFi Direct即P2P协议学习笔记
  2. 大数据毕业设计 电商评论数据分析情感分析 - nlp 机器学习
  3. R语言箱型图 boxplot
  4. 论文学习笔记:Generalized Intersection over Union: A Metric and A Loss for Bounding Box Regressi
  5. Windows server 2012 FTP服务
  6. mysql数据库如何克隆好友怎么弄_怎么复制mysql数据库到另一台电脑上?
  7. [转载]1936年一位天津客的烟台游记
  8. redis存储新闻列表_每日一面 - Redis程序设计中,上百万的新闻,如何实时展示最热点的top10条呢...
  9. 杭州校招搞定阿里巴巴offer
  10. Linux运维之--stdin用法