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通用检测函数集合
Feb 08 PHP
PHP与C#分别格式化文件大小的代码
May 14 PHP
PHP文件缓存内容保存格式实例分析
Aug 20 PHP
PHP中$this和$that指针使用实例
Jan 06 PHP
php关键字仅替换一次的实现函数
Oct 29 PHP
java模拟PHP的pack和unpack类
Apr 13 PHP
PHPExcel笔记, mpdf导出
May 03 PHP
PHP使用imagick扩展实现合并图像的方法
Apr 25 PHP
PHP通过bypass disable functions执行系统命令的方法汇总
May 02 PHP
PHP实现百度人脸识别
May 06 PHP
Referer原理与图片防盗链实现方法详解
Jul 03 PHP
在Laravel 中实现是否关注的示例
Oct 22 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 in_array 函数使用说明与in_array需要注意的地方说明
2010/04/13 PHP
PHP 金额数字转换成英文
2010/05/06 PHP
php数据结构与算法(PHP描述) 快速排序 quick sort
2012/06/21 PHP
探讨:php中在foreach中使用foreach ($arr as &$value) 这种类型的解释
2013/06/24 PHP
Thinkphp中Create方法深入探究
2014/06/16 PHP
Json_decode 解析json字符串为NULL的解决方法(必看)
2017/02/17 PHP
通用JS事件写法实现代码
2009/01/07 Javascript
如何判断鼠标是否在DIV的区域内
2013/11/13 Javascript
原生Ajax 和jQuery Ajax的区别示例分析
2014/12/17 Javascript
jQuery晃动层特效实现方法
2015/03/09 Javascript
JavaScript使用setTimeout实现延迟弹出警告框的方法
2015/04/07 Javascript
jquery插件EasyUI中form表单提交实例分享
2016/01/11 Javascript
Bootstrap开发实战之响应式轮播图
2016/06/02 Javascript
js对象实例详解(JavaScript对象深度剖析,深度理解js对象)
2017/09/21 Javascript
Angular2使用vscode断点调试ts文件的方法
2017/12/13 Javascript
Angular-UI Bootstrap组件实现警报功能
2018/07/16 Javascript
浅析Vue项目中使用keep-Alive步骤
2018/07/27 Javascript
Js中使用正则表达式验证输入是否有特殊字符
2018/09/07 Javascript
Nginx设置为Node.js的前端服务器方法总结
2019/03/27 Javascript
vue如何搭建多页面多系统应用
2020/06/17 Javascript
对Python新手编程过程中如何规避一些常见问题的建议
2015/04/01 Python
Python 调用Java实例详解
2017/06/02 Python
Python实现XML文件解析的示例代码
2018/02/05 Python
详谈pandas中agg函数和apply函数的区别
2018/04/20 Python
详解pandas中MultiIndex和对象实际索引不一致问题
2019/07/23 Python
新手入门学习python Numpy基础操作
2020/03/02 Python
python实现简单俄罗斯方块
2020/03/13 Python
Python 操作 MySQL数据库
2020/09/18 Python
借助HTML5 Canvas来绘制三角形和矩形等多边形的方法
2016/03/14 HTML / CSS
意大利比基尼品牌:MISS BIKINI
2019/11/02 全球购物
GOLFINO英国官网:高尔夫服装
2020/04/11 全球购物
PHP如何删除一个Cookie值
2012/11/15 面试题
后勤岗位职责
2013/11/26 职场文书
绿化工程实施方案
2014/03/17 职场文书
给领导的感谢信范文
2015/01/23 职场文书
该怎么书写道歉信?
2019/07/03 职场文书