php 自定义函数实现将数据 以excel 表格形式导出示例


Posted in PHP onNovember 13, 2019

本文实例讲述了php 自定义函数实现将数据 以excel 表格形式导出。分享给大家供大家参考,具体如下:

/**
* 导出数据为excel表格
* @param
* array $data  一个二维数组,结构如同从数据库查出来的数组
* array $title  excel的第一行标题,一个数组,如果为空则没有标题
* String $filename 下载的文件名
*/
function exportexcel($data=array(),$title=array(),$filename='report'){
    header("Content-type:application/octet-stream");
    header("Accept-Ranges:bytes");
    header("Content-type:application/vnd.ms-excel");
    header("Content-Disposition:attachment;filename=".$filename.".xls");
    header("Pragma: no-cache");
    header("Expires: 0");
    //导出xls 开始
    if (!empty($title)){
      foreach ($title as $k => $v) {
        $title[$k]=iconv("UTF-8", "GB2312",$v);
      }
      $title= implode("\t", $title);
      echo "$title\n";
    }
    if (!empty($data)){
      foreach($data as $key=>$val){
        foreach ($val as $ck => $cv) {
          $data[$key][$ck]=mb_convert_encoding($cv,"GB2312","UTF-8");
        }
        $data[$key]=implode("\t", $data[$key]);
      }
      echo implode("\n",$data);
    }
}

php内置函数讲解

String mb_convert_encoding( $str, $encoding1,$encoding2 )

$str,要转换编码的字符串
$encoding1,目标编码,如utf-8,gbk,大小写均可
$encoding2,原编码,如utf-8,gbk,大小写均可

demo

$title = array("title1","title2","title3");
$data = array("数据1","数据2","数据3");
$fileName = "demo";
exportexcel($data,$title,$fileName);

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
让你的网站首页自动选择语言转跳
Dec 06 PHP
PHP获取客户端真实IP地址的5种情况分析和实现代码
Jul 08 PHP
CodeIgniter框架数据库事务处理的设计缺陷和解决方案
Jul 25 PHP
php实现的太平洋时间和北京时间互转的自定义函数分享
Aug 19 PHP
PHP实现支持GET,POST,Multipart/form-data的HTTP请求类
Sep 24 PHP
浅谈php中include文件变量作用域
Jun 18 PHP
PHP通过微信跳转的Code参数获取用户的openid(关键代码)
Jul 06 PHP
PHP基于curl后台远程登录正方教务系统的方法
Oct 14 PHP
phpStudy配置多站点多域名和多端口的方法
Sep 01 PHP
PHP实现的多维数组排序算法分析
Feb 10 PHP
PHP-FPM 设置多pool及配置文件重写操作示例
Oct 02 PHP
php 多进程编程父进程的阻塞与非阻塞实例分析
Feb 22 PHP
php array 转json及java 转换 json数据格式操作示例
Nov 13 #PHP
Yii框架学习笔记之应用组件操作示例
Nov 13 #PHP
Yii框架自定义数据库操作组件示例
Nov 11 #PHP
php接口隔离原则实例分析
Nov 11 #PHP
Yii框架布局文件的动态切换操作示例
Nov 11 #PHP
Yii框架模拟组件调用注入示例
Nov 11 #PHP
在Laravel中使用MongoDB的方法示例
Nov 11 #PHP
You might like
Laravel给生产环境添加监听事件(SQL日志监听)
2017/06/19 PHP
PHP PDOStatement::fetchAll讲解
2019/01/31 PHP
一个简单的js树形菜单
2011/12/09 Javascript
jquery插件制作 表单验证实现代码
2012/08/17 Javascript
js 阻止子元素响应父元素的onmouseout事件具体实现
2013/12/23 Javascript
JavaScript实现同步于本地时间的动态时间显示方法
2015/02/02 Javascript
JavaScript实现的简单拖拽效果
2015/06/01 Javascript
JavaScript 性能优化小结
2015/10/12 Javascript
谷歌Chrome浏览器扩展程序开发小记
2016/01/06 Javascript
简单谈谈javascript中this的隐式绑定
2016/02/22 Javascript
全面解析jQuery $(document).ready()和JavaScript onload事件
2016/06/08 Javascript
JavaScript鼠标特效大全
2016/09/13 Javascript
详解Jquery 遍历数组之$().each方法与$.each()方法介绍
2017/01/09 Javascript
为JQuery EasyUI 表单组件增加焦点切换功能的方法
2017/04/13 jQuery
angularjs实现过滤并替换关键字小功能
2017/09/19 Javascript
Mac下安装vue
2018/04/11 Javascript
JS闭包经典实例详解
2018/12/20 Javascript
Python使用getpass库读取密码的示例
2017/10/10 Python
Django中的CBV和FBV示例介绍
2018/02/25 Python
Python实现批量执行同目录下的py文件方法
2019/01/11 Python
python opencv 实现读取、显示、写入图像的方法
2020/06/08 Python
python 基于opencv操作摄像头
2020/12/24 Python
python脚本使用阿里云slb对恶意攻击进行封堵的实现
2021/02/04 Python
使用tkinter实现三子棋游戏
2021/02/25 Python
HTML5中drawImage用法分析
2014/12/01 HTML / CSS
最新教师自我评价分享
2013/11/12 职场文书
绿化先进工作者事迹材料
2014/01/30 职场文书
知识就是力量演讲稿
2014/09/13 职场文书
房屋租赁授权委托书范本
2014/09/20 职场文书
服务承诺书
2015/01/19 职场文书
2015年高中班主任工作总结
2015/04/30 职场文书
纪录片信仰观后感
2015/06/08 职场文书
好员工观后感
2015/06/17 职场文书
2016国庆节67周年红领巾广播稿
2015/12/18 职场文书
html form表单基础入门案例讲解
2021/07/21 HTML / CSS
SpringBoot整合RabbitMQ的5种模式实战
2021/08/02 Java/Android