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世纪万年历
Dec 06 PHP
php gd2 上传图片/文字水印/图片水印/等比例缩略图/实现代码
May 15 PHP
PHP读取txt文件的内容并赋值给数组的代码
Nov 03 PHP
在PHP中利用wsdl创建标准webservice的实现代码
Dec 07 PHP
基于Zend的Config机制的应用分析
May 02 PHP
PHP curl 获取响应的状态码的方法
Jan 13 PHP
php启用sphinx全文搜索的实现方法
Dec 24 PHP
PHP的伪随机数与真随机数详解
May 27 PHP
详解PHP的Yii框架中组件行为的属性注入和方法注入
Mar 18 PHP
php preg_match的匹配不同国家语言实例
Dec 29 PHP
php实现解析xml并生成sql语句的方法
Feb 03 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
Yii中CArrayDataProvider和CActiveDataProvider区别实例分析
2016/03/02 PHP
Yii2中DropDownList简单用法示例
2016/07/18 PHP
PHP文件系统管理(实例讲解)
2017/09/19 PHP
Laravel 5.5基于内置的Auth模块实现前后台登陆详解
2017/12/21 PHP
Laravel框架控制器的middleware中间件用法分析
2019/09/30 PHP
Js 代码中,ajax请求地址后加随机数防止浏览器缓存的原因
2013/05/07 Javascript
jQuery学习笔记之总体架构
2014/06/03 Javascript
用jquery实现动画跳到顶部和底部(这个比较简单)
2014/09/01 Javascript
关于javascript原型的修改与重写(覆盖)差别详解
2016/08/31 Javascript
Vuejs第十三篇之组件——杂项
2016/09/09 Javascript
jQuery输入框密码的显示隐藏【代码分享】
2017/04/29 jQuery
jQuery plugin animsition使用小结
2017/09/14 jQuery
详解JavaScript中的六种错误类型
2017/09/21 Javascript
使用JS中的Replace()方法遇到的问题小结
2017/10/20 Javascript
ES6中javascript实现函数绑定及类的事件绑定功能详解
2017/11/08 Javascript
js实现窗口全屏示例详解
2019/09/17 Javascript
javascript设计模式 ? 职责链模式原理与用法实例分析
2020/04/16 Javascript
Python 中 list 的各项操作技巧
2017/04/13 Python
详解如何利用Cython为Python代码加速
2018/01/27 Python
python使用tornado实现简单爬虫
2018/07/28 Python
在Python中实现替换字符串中的子串的示例
2018/10/31 Python
Django 简单实现分页与搜索功能的示例代码
2019/11/07 Python
Python socket处理client连接过程解析
2020/03/18 Python
python归并排序算法过程实例讲解
2020/11/04 Python
PyTorch 中的傅里叶卷积实现示例
2020/12/11 Python
TensorFlow的环境配置与安装方法
2021/02/20 Python
CSS3制作Dropdown下拉菜单的方法
2015/07/18 HTML / CSS
Nike澳大利亚官网:Nike.com (AU)
2019/06/03 全球购物
留学自荐信的技巧
2013/10/17 职场文书
人力资源主管岗位职责
2014/01/29 职场文书
村委会换届选举方案
2014/05/03 职场文书
副校长个人对照检查材料思想汇报
2014/10/04 职场文书
天堂的孩子观后感
2015/06/11 职场文书
大学生干部培训心得体会
2016/01/06 职场文书
完美处理python与anaconda环境变量的冲突问题
2021/04/07 Python
何时使用Map来代替普通的JS对象
2021/04/29 Javascript