实现数据导出为.csv表格
数据导出实现步骤:
1.查找出要导出的数据,整理为二维数组。
2.定义导出表格的字段
3.将整理的二维数组按导出表格定义的字段重新整理。
4.将整理的二维数组写入服务器中已有的一个.csv文件。
5.用封装好的方法将其下载下来。
具体代码:
//定义导出字段
$a_a=array();
$b_a=array("姓名","手机","公司","身份证");
foreach ($b_a as $key => $v) {
//以gbk的编码方式编码,防止乱码
$b_a[$key]=mb_convert_encoding($v,"gbk");
}
$a_a[]=$b_a;
//数据库查找要导出的数据
$table_name="yijiu_members";
$info_list=ugv::mod($table_name)->query("select * from oho_".$table_name." $_search_s order by id desc ")->result_array();
foreach($info_list as $row ){
//导出身份证号码时,将其以字符串的形式导出,不然表格会将身份证号码以科学计数法的形式表示,且出现错误
$row["idcard"]="'".$row["idcard"]."'";
$b_a=array($row['isname'],$row['ismobile'],$row["iscompany"],$row["idcard"]);
foreach ($b_a as $key => $v) {
$b_a[$key]=mb_convert_encoding($v,"gbk");
}
$a_a[]=$b_a;
}
$fh = fopen(ROOT_PATH.'files/tmp/2.csv','w');
//遍历将数据写入csv文件
foreach ($a_a as $a) {
if (fputcsv($fh, $a) === false) {
die("Can't write CSV line");
}
}
fclose($fh);
$name="yijiumembers.csv";
//用封装好的方法将文件下载下来
files::down(ROOT_PATH.'files/tmp/2.csv',$name);
实现数据导出为.csv表格的更多相关文章
- 将mysql数据库的数据导出做成excl表格通过邮件发送附件发给指定人
mysql数据库的数据导出成excl表 方法一: mysql -uroot -p123456 -e “select *.* from 表 into outfile ‘文件路径.xls’into out ...
- 数据导出为excel表格
---恢复内容开始--- 方式一: 通过request和response中携带的数据导出表格,导出的结果会将页面中展示的内容全部导出.代码如下: //调出保存框,下载页面所有内容 String fil ...
- asp.net数据导出到excel表格,并设置表格样式
1.首先在项目中添加引用
- QTableWidget 导出到csv表格
跳槽到了新的公司,开始苦逼的出差现场开发,接触到了新的应用.有很多应用需要将Table导出成表格,可以把table导出成csv格式的文件.跟大伙分享一下: lass TableToExcle : pu ...
- hive表数据导出到csv乱码原因及解决方案
转载自http://blog.csdn.net/lgdlxc/article/details/42126225 Hive表中的数据使用hive - e"select * from table ...
- es实战之数据导出成csv文件
从es将数据导出分两步: 查询大量数据 将数据生成文件并下载 本篇主要是将第二步,第一步在<es实战之查询大量数据>中已讲述. csv vs excel excel2003不能超过6553 ...
- Elasticsearch:如何把Elasticsearch中的数据导出为CSV格式的文件
本教程向您展示如何将数据从Elasticsearch导出到CSV文件. 想象一下,您想要在Excel中打开一些Elasticsearch中的数据,并根据这些数据创建数据透视表. 这只是一个用例,其中将 ...
- 一个php将数据库的数据导出到excle表格中的小dome
首先我们需要下载个PHPExcel,PHPExcel下载地址链接:https://pan.baidu.com/s/1nxpAc45 密码:qgct 下面来写个dome: <?php //把数据写 ...
- vue.js纯前端处理如何将后台返回来的csv数据导出成csv文件
需要实现一个下载csv文件的功能,但后台没有对这个下载文件进行处理,而是将csv数据传给前台而已,需要前台做一下处理. 这是按钮的代码: <a> <el-button size=&q ...
随机推荐
- loadrunner controller如何执行测试
使用Virtual User Generator编写需要测试的脚本 打开controller,在左侧的available scripts里选择需要测试的脚本添加(Add)到scripts in s ...
- Forth 语言概要 - Forth: An underview
Forth 语言概要 - Forth: An underview 原作者 Peter Knaggs 原文标题< Forth: An underview > 译者: 未知 译文链接: htt ...
- JavaScript 无刷新修改浏览器URL地址栏
//发现地址栏已改为:newUrlvar stateObject = {}; var title = "Wow Title"; var newUrl = "/my/awe ...
- Java——集合
Java的集合类是一种非常有用的工具类,用于存储多个对象.它是一个容器,可以把多个对象放到里面. Java集合分三种情况: Set:无序.不可重复 List:有序.可重复 Map:具有映射关系 Col ...
- Linux下创建C函数库
http://blog.163.com/hitperson@126/blog/static/130245975201151552938133 http://blog.sina.com.cn/s/blo ...
- SpringBoot整合定时任务和异步任务处理 3节课
1.SpringBoot定时任务schedule讲解 定时任务应用场景: 简介:讲解什么是定时任务和常见定时任务区别 1.常见定时任务 Java自带的java.util.Timer类 ...
- Java 注解 (Annotation)你可以这样学
注解语法 因为平常开发少见,相信有不少的人员会认为注解的地位不高.其实同 classs 和 interface 一样,注解也属于一种类型.它是在 Java SE 5.0 版本中开始引入的概念. 注解的 ...
- SpringMVC与Struts不同(五)
springmvc与struts2不同 1.springmvc的入口是一个servlet即前端控制器,而struts2入口是一个filter过滤器. 2.springmvc是基于方法开发(一个url对 ...
- Linux内核驱动--硬件访问I/O【原创】
寄存器与内存 寄存器与内存的区别在哪里呢? 寄存器和RAM的主要不同在于寄存器操作有副作用(side effect或边际效果): 读取某个地址时可能导致该地址内容发生变化,比如很多设备的中断状态寄存器 ...
- __ATTRIBUTE__ 知多少?
GNU C 的一大特色就是__attribute__ 机制.__attribute__ 可以设置函数属性(Function Attribute ).变量属性(Variable Attribute )和 ...