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 将bmp图片转为jpg等其他任意格式的图片
Jun 29 PHP
PHP输出时间差函数代码
Jan 28 PHP
php处理文件的小例子(解压缩,删除目录)
Feb 03 PHP
测试PHP连接MYSQL成功与否的代码
Aug 16 PHP
php函数指定默认值方法的小例子
Dec 04 PHP
destoon整合ucenter后注册页面不跳转的解决方法
Jun 21 PHP
CI框架学习笔记(一) - 环境安装、基本术语和框架流程
Oct 26 PHP
php中mysql操作buffer用法详解
Mar 19 PHP
PHP的命令行命令使用指南
Aug 18 PHP
PHP简单的MVC框架实现方法
Dec 01 PHP
PHP实现的字符串匹配算法示例【sunday算法】
Dec 19 PHP
详细解读php的命名空间(一)
Feb 21 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 mssql 分页SQL语句优化 持续影响
2009/04/26 PHP
PHP中for与foreach的区别分析
2011/03/09 PHP
使用图灵api创建微信聊天机器人
2015/07/23 PHP
jquery load()在firefox(火狐)下显示不正常的解决方法
2011/04/05 Javascript
JQuery中的html()、text()、val()区别示例介绍
2014/09/01 Javascript
实例详解jQuery表单验证插件validate
2016/01/18 Javascript
基于 Node.js 实现前后端分离
2016/04/23 Javascript
js实现倒计时及时间对象
2016/11/15 Javascript
简单实现JS计算器功能
2016/12/21 Javascript
Web 开发中Ajax的Session 超时处理方法
2017/01/19 Javascript
js如何编写简单的ajax方法库
2017/08/02 Javascript
不得不看之JavaScript构造函数及new运算符
2017/08/21 Javascript
浅谈vue的踩坑路
2017/08/31 Javascript
详解React Native开源时间日期选择器组件(react-native-datetime)
2017/09/13 Javascript
详解Vue中的基本语法和常用指令
2019/07/23 Javascript
layer 刷新某个页面的实现方法
2019/09/05 Javascript
js实现简单放大镜效果
2020/03/07 Javascript
python实现从web抓取文档的方法
2014/09/26 Python
Tensorflow简单验证码识别应用
2017/05/25 Python
python抓取京东小米8手机配置信息
2018/11/13 Python
详解Pandas 处理缺失值指令大全
2020/07/30 Python
15个Pythonic的代码示例(值得收藏)
2020/10/29 Python
python中的unittest框架实例详解
2021/02/05 Python
CSS3之transition实现下划线的示例代码
2018/05/30 HTML / CSS
凯普林包包西班牙官网:Kipling西班牙
2019/04/12 全球购物
一套PHP的笔试题
2013/05/31 面试题
施工质量承诺书范文
2014/05/30 职场文书
学校教师安全责任书
2014/07/23 职场文书
公司年底活动方案
2014/08/17 职场文书
食品委托检验协议书范本
2014/09/12 职场文书
开业庆典活动策划方案
2014/09/21 职场文书
龙潭大峡谷导游词
2015/02/10 职场文书
Html分层的box-shadow效果的示例代码
2021/03/30 HTML / CSS
SQL 窗口函数实现高效分页查询的案例分析
2021/05/21 SQL Server
CSS实现渐变色边框(Gradient borders)的5种方法
2022/03/25 HTML / CSS
解决Oracle数据库用户密码过期
2022/05/11 Oracle