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 相关文章推荐
Php部分常见问题总结
Oct 09 PHP
php 全局变量范围分析
Aug 07 PHP
php实现的仿阿里巴巴实现同类产品翻页
Dec 11 PHP
php小偷相关截取函数备忘
Nov 28 PHP
PHP排序算法的复习和总结
Feb 15 PHP
php启动时候提示PHP startup的解决方法
May 07 PHP
深入分析php之面向对象
May 15 PHP
浅析HTTP消息头网页缓存控制以及header常用指令介绍
Jun 28 PHP
thinkPHP导出csv文件及用表格输出excel的方法
Dec 30 PHP
详解php中 === 的使用
Oct 24 PHP
PHP区块查询实现方法分析
May 12 PHP
thinkphp5.1 文件引入路径问题及注意事项
Jun 13 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
PHP mb_convert_encoding 获取字符串编码类型实现代码
2009/04/26 PHP
PHP管理依赖(dependency)关系工具 Composer的自动加载(autoload)
2014/08/18 PHP
yii使用activeFileField控件实现上传文件与图片的方法
2015/12/28 PHP
thinkphp3.x中display方法及show方法的用法实例
2016/05/19 PHP
微信 getAccessToken方法详解及实例
2016/11/23 PHP
PHP PDO操作MySQL基础教程
2017/06/05 PHP
Laravel 模型使用软删除-左连接查询-表起别名示例
2019/10/24 PHP
jQuery图片预加载 等比缩放实现代码
2011/10/04 Javascript
js实现正方形颜色从下往上升的效果
2014/08/04 Javascript
JavaScript中停止执行setInterval和setTimeout事件的方法
2015/05/14 Javascript
jQuery.extend 函数及用法详细
2015/09/06 Javascript
JavaScript代码生成PDF文件的方法
2016/02/26 Javascript
JavaScript中的普通函数和箭头函数的区别和用法详解
2017/03/21 Javascript
Express框架之connect-flash详解
2017/05/31 Javascript
jQuery使用ajax_动力节点Java学院整理
2017/07/05 jQuery
Vue.js划分组件的方法
2017/10/29 Javascript
官方推荐react-navigation的具体使用详解
2018/05/08 Javascript
Vue弹出菜单功能的实现代码
2018/09/12 Javascript
ES6入门教程之let、const的使用方法
2019/04/13 Javascript
简洁的十分钟Python入门教程
2015/04/03 Python
详解Django之admin组件的使用和源码剖析
2018/05/04 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
2019/07/22 Python
python使用docx模块读写docx文件的方法与docx模块常用方法详解
2020/02/17 Python
Java多线程实现四种方式原理详解
2020/06/02 Python
使用python爬取抖音app视频的实例代码
2020/12/01 Python
美国玛丽莎收藏奢华时尚商店:Marissa Collections
2016/11/21 全球购物
中学教师教育感言
2014/02/21 职场文书
弘扬雷锋精神活动演讲稿
2014/03/04 职场文书
大学生党员承诺书
2014/05/20 职场文书
学校花圃的标语
2014/06/18 职场文书
教师工作总结范文2014
2014/11/10 职场文书
个人工作年终总结
2015/03/09 职场文书
社区青年志愿者活动总结
2015/05/06 职场文书
小学数学新课改心得体会
2016/01/22 职场文书
MySQL 全文检索的使用示例
2021/06/07 MySQL
Win11 25163.1010更新补丁KB5016904推送,测试服务验证管道(附更新修复汇总)
2022/07/23 数码科技