- cURL是php的一个库,Client URL Library Function
- 官方解释: curl is a command line tool for transferring data with URL syntax
确定curl打开,phpinfo,然后用浏览器查找一下是否已经开启
- 用curl模拟登陆慕课网
<?php
//这里是登录的用户名和密码以及记住密码
$data = 'username=*******@qq.com&password=*******&remember=1';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "http://www.imooc.com/user/login");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); //执行之后不要直接打印出来
date_default_timezone_set('PRC'); //Cookide前设置时区
//设置cookie时候必须设置
curl_setopt($curl, CURLOPT_COOKIESESSION, TRUE);
curl_setopt($curl, CURLOPT_COOKIEFILE, "cookiefile");
curl_setopt($curl, CURLOPT_COOKIEJAR, "cookiefile");
curl_setopt($curl, CURLOPT_COOKIE, session_name().'='.session_id());
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);//支持页面跳转
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_HTTPHEADER,array("application/x-www-form-urlencoded;
charset=utf-8",
"Content-length: ".strlen($data)
));
curl_exec($curl);
curl_setopt($curl, CURLOPT_URL, "http://www.imooc.com/space/index");
curl_setopt($curl, CURLOPT_POST, 0);
curl_setopt($curl, CURLOPT_HTTPHEADER, array("Content-type:text/xml"));
$output = curl_exec($curl);
curl_close($curl);
echo $output;
?>
- ftp模拟登陆
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "ftp://************:5000/******.txt");
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_TIMEOUT, 300);
curl_setopt($curl, CURLOPT_USERPWD, "账号:密码");
$outfile = fopen('test.txt', 'wb');
curl_setopt($curl, CURLOPT_FILE, $outfile);
$rtn = curl_exec($curl);
fclose($outfile);
if (!curl_errno($curl)) {
echo "RETURN".$rtn;
}else {
echo "Curl error".curl_error($curl);
}
curl_close($curl);
?>
- ftp模拟上传
<?php
$curl = curl_init();
$localfile = 'test2.txt';
$fp = fopen($localfile, 'r');
curl_setopt($curl, CURLOPT_URL, "ftp://************:5000/test2.txt");
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_TIMEOUT, 300);
curl_setopt($curl, CURLOPT_USERPWD, "账号:密码");
curl_setopt($curl, CURLOPT_UPLOAD, 1);
curl_setopt($curl, CURLOPT_INFILE, $fp);
curl_setopt($curl, CURLOPT_INFILESIZE, filesize($localfile));
$rtn = curl_exec($curl);
fclose($fp);
if (!curl_errno($curl)) {
echo "Uploaded sucessfully.";
} else {
echo "Curl error:".curl_error($curl);
}
curl_close($curl);
?>
- https 模拟登陆
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://ajax.aspnetcdn.com/ajax/jquery.validate/1.12.0/jquery.validate.js");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
date_default_timezone_set('PRC');
curl_setopt($curl,CURLOPT_SSL_VERIFYPEER, 0);
$output = curl_exec($curl);
curl_close($curl);
echo $output;
?>
参照慕课网教程