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 相关文章推荐
PHP 多维数组排序(usort,uasort)
Jun 30 PHP
php中模拟POST传递数据的两种方法分享
Sep 16 PHP
destoon找回管理员密码的方法
Jun 21 PHP
php数组中删除元素之重新索引的方法
Sep 16 PHP
php实现对两个数组进行减法操作的方法
Apr 17 PHP
给WordPress的编辑后台添加提示框的代码实例分享
Dec 25 PHP
PHP时间戳格式全部汇总 (获取时间、时间戳)
Jun 13 PHP
PHP入门教程之会话控制技巧(cookie与session)
Sep 11 PHP
PHP 类与构造函数解析
Feb 06 PHP
搜索附近的人PHP实现代码
Feb 11 PHP
asp.net和php的区别点总结
Oct 10 PHP
laravel邮件发送的实现代码示例
Jan 31 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
如何在PHP中使用Oracle数据库(6)
2006/10/09 PHP
php利用iframe实现无刷新文件上传功能的代码
2011/09/29 PHP
PHP中shuffle数组值随便排序函数用法
2014/11/21 PHP
php实用代码片段整理
2016/11/12 PHP
基于CI框架的微信网页授权库示例
2016/11/25 PHP
PHP针对中英文混合字符串长度判断及截取方法示例
2017/03/31 PHP
PHP命名空间用法实例分析
2019/09/04 PHP
PHP实现数组根据某个字段进行水平合并,横向合并案例分析
2019/10/08 PHP
用Javascript实现Sleep暂停功能代码
2010/09/03 Javascript
扩展Jquery插件处理mouseover时内部有子元素时发生样式闪烁
2011/12/08 Javascript
js操作textarea 常用方法总结
2012/12/03 Javascript
当前页禁止复制粘贴截屏代码小集
2013/07/24 Javascript
下拉框select的绑定示例
2014/09/04 Javascript
通过location.replace禁止浏览器后退防止重复提交
2014/09/04 Javascript
jQuery中nextUntil()方法用法实例
2015/01/07 Javascript
JavaScript实现为指定对象添加多个事件处理程序的方法
2015/04/17 Javascript
angularjs实现文字上下无缝滚动特效代码
2016/09/04 Javascript
input框中自动展示当前日期yyyy/mm/dd的实现方法
2017/07/06 Javascript
JS操作时间 - UNIX时间戳的简单介绍(必看篇)
2017/08/16 Javascript
vue-cli 引入、配置axios的方法
2018/05/08 Javascript
mpvue项目中使用第三方UI组件库的方法
2018/09/30 Javascript
vue+elementui 对话框取消 表单验证重置示例
2019/10/29 Javascript
nodejs中使用archive压缩文件的实现代码
2019/11/26 NodeJs
微信小程序scroll-view锚点链接滚动跳转功能
2019/12/12 Javascript
python基础教程之分支、循环简单用法
2016/06/16 Python
使用 Python 合并多个格式一致的 Excel 文件(推荐)
2019/12/09 Python
python 等差数列末项计算方式
2020/05/03 Python
如何用python实现一个HTTP连接池
2021/01/14 Python
CSS3实现可关闭的下拉手风琴菜单效果
2015/08/31 HTML / CSS
给学校的建议书
2014/03/12 职场文书
工程质量承诺书范文
2014/03/27 职场文书
《苏珊的帽子》教学反思
2014/04/07 职场文书
六年级上册《闻官军收河南河北》的教学设计
2019/11/15 职场文书
Html5生成验证码的示例代码
2021/05/10 Javascript
详解Redis瘦身指南
2021/05/26 Redis
解决MultipartFile.transferTo(dest) 报FileNotFoundExcep的问题
2021/07/01 Java/Android