PHP函数分享之curl方式取得数据、模拟登陆、POST数据


Posted in PHP onJune 04, 2014

废话不多说直接上代码

/********************** curl 系列 ***********************/
//直接通过curl方式取得数据(包含POST、HEADER等)
/*
 * $url: 如果非数组,则为http;如是数组,则为https
 * $header: 头文件
 * $post: post方式提交 array形式
 * $cookies: 0默认无cookie,1为设置,2为获取
 */
public function curl_allinfo($urls, $header = FALSE, $post = FALSE, $cookies = 0) {
    $url = is_array($urls) ? $urls['0'] : $urls;
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    //带header方式提交
    if($header != FALSE){
        curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    }
    //post提交方式
    if($post != FALSE){
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
    }
    if($cookies == 1){
        curl_setopt($ch, CURLOPT_COOKIEJAR, "cookiefile");
    }else if($cookies == 2){
        curl_setopt($ch, CURLOPT_COOKIEFILE, "cookiefile");
    }
    if(is_array($urls)){
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    }
    $data = curl_exec($ch);
    curl_close($ch);
    return $data;
}
PHP 相关文章推荐
我的论坛源代码(一)
Oct 09 PHP
php 删除无限级目录与文件代码共享
Nov 22 PHP
深入Apache与Nginx的优缺点比较详解
Jun 17 PHP
php5.5中类级别的常量使用介绍
Oct 02 PHP
解决Codeigniter不能上传rar和zip压缩包问题
Mar 07 PHP
destoon出现验证码不显示时的紧急处理方法
Aug 22 PHP
Laravel框架学习笔记(二)项目实战之模型(Models)
Oct 15 PHP
php+jQuery+Ajax实现点赞效果的方法(附源码下载)
Jul 21 PHP
PHP模板引擎Smarty中变量的使用方法示例
Apr 11 PHP
thinkPHP中_initialize方法实例分析
Dec 05 PHP
PHP面向对象程序设计继承用法简单示例
Dec 28 PHP
PHP开启目录引索+fancyindex漂亮目录浏览带搜索功能
Sep 23 PHP
PHP 如何获取二维数组中某个key的集合
Jun 03 #PHP
PHP 二维数组根据某个字段排序的具体实现
Jun 03 #PHP
php 批量添加多行文本框textarea一行一个
Jun 03 #PHP
PHP解决URL中文GBK乱码问题的两种方法
Jun 03 #PHP
php数组中包含中文的排序方法
Jun 03 #PHP
php实现文件下载实例分享
Jun 02 #PHP
php+js实现异步图片上传实例分享
Jun 02 #PHP
You might like
PHP5.0正式发布 不完全兼容PHP4 新增多项功能
2006/10/09 PHP
在PHP中使用反射技术的架构插件使用说明
2010/05/18 PHP
PHP轻量级数据库操作类Medoo增加、删除、修改、查询例子
2014/07/04 PHP
PHP加密解密字符串汇总
2015/04/26 PHP
PHP pear安装配置教程
2016/05/14 PHP
Laravel最佳分割路由文件(routes.php)的方式
2016/08/04 PHP
php如何修改SESSION的生存存储时间的实例代码
2017/07/05 PHP
分享8个Laravel模型时间戳使用技巧小结
2020/02/12 PHP
javascript arguments使用示例
2014/12/16 Javascript
谷歌浏览器调试JavaScript小技巧
2014/12/29 Javascript
javascript计时器详解
2015/02/28 Javascript
js运动动画的八个知识点
2015/03/12 Javascript
JS实现在状态栏显示打字效果完整实例
2015/11/02 Javascript
jQuery实现form表单基于ajax无刷新提交方法详解
2015/12/08 Javascript
Spring mvc 接收json对象
2015/12/10 Javascript
AngularJs 指令详解及示例代码
2016/09/01 Javascript
JS搜狐面试题分析
2016/12/16 Javascript
JS 实现 ajax 异步浏览器兼容问题
2017/01/21 Javascript
微信小程序-横向滑动scroll-view隐藏滚动条
2017/04/20 Javascript
Angular排序实例详解
2017/06/28 Javascript
D3.js实现拓扑图的示例代码
2018/06/30 Javascript
使用elementUI实现将图片上传到本地的示例
2018/09/04 Javascript
vue2.0$nextTick监听数据渲染完成之后的回调函数方法
2018/09/11 Javascript
JavaScript对JSON数组简单排序操作示例
2019/01/31 Javascript
JS实现页面数据懒加载
2020/02/13 Javascript
微信小程序实现电子签名并导出图片
2020/05/27 Javascript
[01:33:07]VGJ.T vs Newbee Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
基于Python实现的扫雷游戏实例代码
2014/08/01 Python
Python的字典和列表的使用中一些需要注意的地方
2015/04/24 Python
python如何支持并发方法详解
2020/07/25 Python
详解PyQt5中textBrowser显示print语句输出的简单方法
2020/08/07 Python
Python 制作查询商品历史价格的小工具
2020/10/20 Python
欧洲最大的滑雪假期供应商之一:Sunweb Holidays
2018/01/06 全球购物
财务人员个人求职信范文
2013/12/04 职场文书
环保倡议书怎么写
2014/05/16 职场文书
居委会个人对照检查材料思想汇报
2014/09/29 职场文书