php导出csv格式数据并将数字转换成文本的思路以及代码分享


Posted in PHP onJune 05, 2014

php导出csv格式数据实现:
先定义一个字符串 存储内容,例如
 $exportdata = '规则111,规则222,审222,规222,服2222,规则1,规则2,规则3,匹配字符,设置时间,有效期'."\n";

然后对需要保存csv的数组进行foreach循环,例如

              if (!empty($lists)){
                  foreach($lists as $key => $value){
                    $time = date("Y-m-d_H:i:s", $value['add_time']);
                    $exportdata .= "\"\t".$value['Rule_id']."\",\"\t".$value['Rule_name']."\",\"\t".$value['Matching_level']."\",\"\t"."{$value['Rule_action']}"."\",\"\t".$value['Service_type']."\",\"\t".$value['Keyword1']."\",\"\t".$value['Keyword2']."\",\"\t".$value['Keyword3']."\",\"\t".$value['Matching_word']."\",\"\t".$value['Set_time']."\",\"\t".$value['Validation_time']."\"\n";
                  }
              }

csv格式的内容用','隔开,在现实的时候就能分格了。每一行后面就一个'\n'就能分行了。

然后在后面执行输出就行了。例如

              $filename = "plcnetinfo_{$date}.csv";              header("Content-type:application/vnd.ms-excel");
              header("Content-Disposition: attachment; filename=$filename");

              header("Expires: 0");
              header("Pragma: public");
              header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
              header("Cache-Control: public");
              echo(mb_convert_encoding($exportdata,"gb2312","UTF-8"));

但是在导出数字的时候csv就会把前面的0去掉,例如 我想显示 00001   ,如果输出的话就会显示1.这种解决办法就是在输出的时候就一个'\"\t',这个是制表符,会显示成空格。就能把数值转化成文本了。不过在导入的时候会出现'"    '.这种东西,用一下php自带的trim函数就好了。完整代码如下:

              
              //var_dump($sql);
              $lists = $this->dbo->query($sql);
 

  $exportdata = '规则111,规则222,审222,规222,服2222,规则1,规则2,规则3,匹配字符,设置时间,有效期'."\n";
              $date = date("YmdHis");
              if (!empty($lists)){
                  foreach($lists as $key => $value){
                    $time = date("Y-m-d_H:i:s", $value['add_time']);
                    $exportdata .= "\"\t".$value['Rule_id']."\",\"\t".$value['Rule_name']."\",\"\t".$value['Matching_level']."\",\"\t"."{$value['Rule_action']}"."\",\"\t".$value['Service_type']."\",\"\t".$value['Keyword1']."\",\"\t".$value['Keyword2']."\",\"\t".$value['Keyword3']."\",\"\t".$value['Matching_word']."\",\"\t".$value['Set_time']."\",\"\t".$value['Validation_time']."\"\n";
                  }
              }
              $filename = "plcnetinfo_{$date}.csv";
              header("Content-type:application/vnd.ms-excel");
              header("Content-Disposition: attachment; filename=$filename");
              header("Expires: 0");
              header("Pragma: public");
              header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
              header("Cache-Control: public");
              echo(mb_convert_encoding($exportdata,"gb2312","UTF-8"));
PHP 相关文章推荐
谈谈PHP语法(4)
Oct 09 PHP
无数据库的详细域名查询程序PHP版(2)
Oct 09 PHP
图书管理程序(二)
Oct 09 PHP
php定时删除文件夹下文件(清理缓存文件)
Jan 23 PHP
PHP判断是否有Get参数的方法
May 05 PHP
CodeIgniter启用缓存和清除缓存的方法
Jun 12 PHP
PHP图片处理之图片背景、画布操作
Nov 19 PHP
thinkphp autoload 命名空间自定义 namespace
Jul 17 PHP
php生成txt文件实例代码介绍
Apr 28 PHP
Netbeans 8.2将支持PHP7 更精彩
Jun 13 PHP
php实现批量修改文件名称的方法
Jul 23 PHP
利用Laravel事件系统如何实现登录日志的记录详解
May 20 PHP
php 购物车完整实现代码
Jun 05 #PHP
PHP实例分享判断客户端是否使用代理服务器及其匿名级别
Jun 04 #PHP
浅谈PHP调用Webservice思路及源码分享
Jun 04 #PHP
利用谷歌 Translate API制作自己的翻译脚本
Jun 04 #PHP
PHP函数分享之curl方式取得数据、模拟登陆、POST数据
Jun 04 #PHP
PHP 如何获取二维数组中某个key的集合
Jun 03 #PHP
PHP 二维数组根据某个字段排序的具体实现
Jun 03 #PHP
You might like
php加密解密函数authcode的用法详细解析
2013/10/28 PHP
PHP错误机制知识汇总
2016/03/24 PHP
jquery1.4.2 for Visual studio 2010 模板文件
2010/07/14 Javascript
jquery中ajax学习笔记4
2011/10/16 Javascript
jquery 面包屑导航 具体实现
2013/06/05 Javascript
JS控制一个DIV层在指定时间内消失的方法
2014/02/17 Javascript
通过url查找a元素并点击
2014/04/09 Javascript
jQuery截取指定长度字符串代码
2014/08/21 Javascript
JavaScript中最简洁的编码html字符串的方法
2014/10/11 Javascript
Javascript中arguments对象详解
2014/10/22 Javascript
javascript实现按回车键切换焦点
2015/02/09 Javascript
基于jQuery实现仿淘宝套餐选择插件
2015/03/04 Javascript
JavaScript中解析JSON数据的三种方法
2015/07/03 Javascript
基于Vue实现tab栏切换内容不断实时刷新数据功能
2017/04/13 Javascript
利用node.js+mongodb如何搭建一个简单登录注册的功能详解
2017/07/30 Javascript
Angular4开发解决跨域问题详解
2017/08/28 Javascript
JS继承与闭包及JS实现继承的三种方式
2017/10/15 Javascript
mockjs,json-server一起搭建前端通用的数据模拟框架教程
2017/12/18 Javascript
使用watch监听路由变化和watch监听对象的实例
2018/02/24 Javascript
Vue利用canvas实现移动端手写板的方法
2018/05/03 Javascript
vue-router实现编程式导航的代码实例
2019/01/19 Javascript
layui动态渲染生成select的option值方法
2019/09/23 Javascript
[00:44]TI7不朽珍藏III——军团指挥官不朽展示
2017/07/15 DOTA
python线程锁(thread)学习示例
2013/12/04 Python
基于scrapy实现的简单蜘蛛采集程序
2015/04/17 Python
windows上安装Anaconda和python的教程详解
2017/03/28 Python
Python实现按学生年龄排序的实际问题详解
2017/08/29 Python
Python多版本开发环境管理工具介绍
2019/07/03 Python
python pandas cumsum求累计次数的用法
2019/07/29 Python
python语言线程标准库threading.local解读总结
2019/11/10 Python
英国豪华家具和经典家居饰品购物网站:OKA
2020/06/05 全球购物
新闻专业本科生的自我评价分享
2013/11/20 职场文书
企业领导对照检查材料
2014/08/20 职场文书
2014乡镇干部对照检查材料思想汇报
2014/09/26 职场文书
学前班语言教学计划
2015/01/20 职场文书
redis内存空间效率问题的深入探究
2021/05/17 Redis