PHP CURL 总结
来源:互联网 发布:虚拟社交网络弊端 编辑:程序博客网 时间:2024/06/08 08:24
1.Get请求
$curlobj = curl_init(); // 初始化curl_setopt($curlobj, CURLOPT_URL, "http://www.baidu.com"); // 设置访问网页的URLcurl_setopt($curlobj, CURLOPT_RETURNTRANSFER, true); // 执行之后不直接打印出来$output=curl_exec($curlobj); // 执行curl_close($curlobj); // 关闭cURLecho $output; #输出
2.POST请求
$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $postAddress);// post数据curl_setopt($ch, CURLOPT_POST, 1);// post的变量curl_setopt($ch, CURLOPT_POSTFIELDS, $dataString);//http头信息,根据实际情况修改curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json; charset=utf-8', 'Content-Length: ' . strlen($dataString) ));curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 执行之后不直接打印出来$output = curl_exec($ch);curl_close($ch);
带Cookie访问
public function curl($url, $cookie = false){ $curlobj = curl_init(); curl_setopt($curlobj, CURLOPT_URL, $url); curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, true);// 执行之后不直接打印出来 // Cookie相关设置,这部分设置需要在所有会话开始之前设置 date_default_timezone_set('PRC'); // 使用Cookie时,必须先设置时区 curl_setopt($curlobj, CURLOPT_COOKIESESSION, TRUE); #http头信息,根据实际情况设置 curl_setopt($curlobj,CURLOPT_HTTPHEADER,$header); #添加cookie curl_setopt($curlobj, CURLOPT_COOKIE, $cookie); $output = curl_exec($curlobj); curl_close($curlobj); return $output;}
从FTP服务器下载文件
$curlobj = curl_init(); curl_setopt($curlobj, CURLOPT_URL, "ftp://192.168.1.100/downloaddemo.txt"); curl_setopt($curlobj, CURLOPT_HEADER, 0); curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curlobj, CURLOPT_TIMEOUT, 300); // times out after 300scurl_setopt($curlobj, CURLOPT_USERPWD, "peter.zhou:123456");//FTP用户名:密码// Sets up the output file$outfile = fopen('dest.txt', 'wb');//保存到本地的文件名curl_setopt($curlobj, CURLOPT_FILE, $outfile);$rtn = curl_exec($curlobj); fclose($outfile); if(!curl_errno($curlobj)){ // $info = curl_getinfo($curlobj); // print_r($info); echo "RETURN: " . $rtn; } else { echo 'Curl error: ' . curl_error($curlobj);}curl_close($curlobj);
把本地文件上传到FTP服务器上
$curlobj = curl_init(); $localfile = 'ftp01.php';$fp = fopen($localfile, 'r');curl_setopt($curlobj, CURLOPT_URL, "ftp://192.168.1.100/ftp01_uploaded.php"); curl_setopt($curlobj, CURLOPT_HEADER, 0); curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curlobj, CURLOPT_TIMEOUT, 300); // times out after 300scurl_setopt($curlobj, CURLOPT_USERPWD, "peter.zhou:123456");//FTP用户名:密码curl_setopt($curlobj, CURLOPT_UPLOAD, 1);curl_setopt($curlobj, CURLOPT_INFILE, $fp);curl_setopt($curlobj, CURLOPT_INFILESIZE, filesize($localfile));$rtn = curl_exec($curlobj); fclose($fp); if(!curl_errno($curlobj)){ echo "Uploaded successfully."; } else { echo 'Curl error: ' . curl_error($curlobj);}curl_close($curlobj);
下载网络上面的一个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;
一些常用设置
// 不要返回http header 加快效率,方便解析HTMLcurl_setopt($curl, CURLOPT_HEADER, 0);// 让cURL支持页面链接跳转curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // https请求 不验证证书和hostscurl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);//设置获取的信息以文件流的形式返回,而不是直接输出。curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
0 0
- php curl 总结
- PHP CURL 总结
- PHP curl总结
- php curl 提交 总结
- php的curl提交总结
- php 总结curl 使用教程
- PHP函数之CURL: 常见问题总结
- PHP中curl 的用法总结
- php 数据抓取curl+simple_html_dom总结
- PHP函数之CURL: 常见问题总结
- php中的curl的一些参数总结
- curl和php Curl
- php curl
- php curl
- php curl
- php curl
- php curl
- php curl
- Longest Ordered Subsequence
- 面试积累【记下哪些被虐的细节】
- 判断给定字符串是否为回文串
- 机器学习与计算机视觉的两个网站
- 关于recvfrom接收超时
- PHP CURL 总结
- Java字符串相加
- 最近遇到的之前没遇到的但是很常用的问题(仅供自己记录)
- Android内存进程管理机制
- Leetcode-9. Palindrome Number
- 移动端产品版本更新数据表的设计
- 驱动器属性(GetDriveType函数 和 GetVolumeInformation函数)
- POJ 2034 Anti-prime Sequences DFS+质数
- POJ 1328 Radar Installation