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
一个没有MYSQL数据库支持的简易留言本的编写
Oct 09 PHP
PHP简介
Oct 09 PHP
PHP中的MYSQL常用函数(php下操作数据库必备)
Sep 12 PHP
有关PHP中MVC的开发经验分享
May 17 PHP
如何用php生成扭曲及旋转的验证码图片
Jun 07 PHP
THINKPHP内容分页代码分享
Jan 14 PHP
Laravel中使用FormRequest进行表单验证方法及问题汇总
Jun 19 PHP
php判断是否连接上网络的方法实例详解
Dec 14 PHP
PHP删除二维数组中相同元素及数组重复值的方法示例
May 05 PHP
PHP中in_array的隐式转换的解决方法
Mar 06 PHP
PHP设计模式之PHP迭代器模式讲解
Mar 22 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实现文件下载断点续传详解
2014/10/15 PHP
浅谈PHP面向对象之访问者模式+组合模式
2017/05/22 PHP
PHP实现关键字搜索后描红功能示例
2019/07/03 PHP
js Array对象的扩展函数代码
2013/04/24 Javascript
jquery实现div拖拽宽度示例代码
2013/07/31 Javascript
js根据日期判断星座的示例代码
2014/01/23 Javascript
使用javascript实现判断当前浏览器
2015/04/14 Javascript
JQuery实现级联下拉框效果实例讲解
2015/09/17 Javascript
基于jQuery通过jQuery.form.js插件实现异步上传
2015/12/13 Javascript
浅谈JavaScript中小数和大整数的精度丢失
2016/05/31 Javascript
数据结构中的各种排序方法小结(JS实现)
2016/07/23 Javascript
几行js代码实现自适应
2017/02/24 Javascript
微信小程序 循环及嵌套循环的使用总结
2017/09/26 Javascript
vue项目打包部署到服务器的方法示例
2018/08/27 Javascript
浅谈发布订阅模式与观察者模式
2019/04/09 Javascript
Vue中keep-alive组件作用详解
2020/02/04 Javascript
[01:23]2014DOTA2国际邀请赛 球迷无处不在Ti现场世界杯受关注
2014/07/10 DOTA
[59:08]Ti4 冒泡赛第二天 NEWBEE vs Titan 2
2014/07/15 DOTA
Python算法之栈(stack)的实现
2014/08/18 Python
Python标准库内置函数complex介绍
2014/11/25 Python
python获取从命令行输入数字的方法
2015/04/29 Python
常见python正则用法的简单实例
2016/06/21 Python
使用Python写CUDA程序的方法
2017/03/27 Python
python3实现163邮箱SMTP发送邮件
2018/05/22 Python
解决Django的request.POST获取不到内容的问题
2018/05/28 Python
Python 处理图片像素点的实例
2019/01/08 Python
python实现堆排序的实例讲解
2020/02/21 Python
django ObjectDoesNotExist 和 DoesNotExist的用法
2020/07/09 Python
极简的HTML5模版
2015/07/09 HTML / CSS
LUISAVIAROMA德国官网:时尚奢侈品牌购物网站
2020/11/12 全球购物
先进个人事迹材料
2014/01/25 职场文书
大学生活动总结怎么写
2014/04/29 职场文书
文明班集体申报材料
2014/05/23 职场文书
2014年庆祝国庆65周年演讲稿
2014/09/21 职场文书
五四青年节活动总结
2015/02/10 职场文书
优秀新员工事迹材料
2019/05/13 职场文书