首页 技术 正文
技术 2022年11月8日
0 收藏 970 点赞 1,894 浏览 720 个字

今天在用php做excel导出的时候遇到了一个小问题,如图

phpexcel 导出 科学计数问题

单元格默认格式为常规格式,当数值过长时就会变成科学计数。

解决方法:

如果输出的excel的$data数据是手动添加的,那就在对应值得后面添加一个空格,这样的话输出的值就会转换成文本格式.

如果是从数据库读取的话那么把查找的字段稍作修改:

Concat(param," ") as param

这样的话输出的excel就是文本格式的了。

但是有个小bug 当打开excel 查看双击单元格查看,然后当这个字段失去焦点的时候,此单元格又变成了科学计数,所以这种修改只是暂时的把输出的内容变成了文本格式,而单元格的格式还是没有被修改,这样做只能解决一时之需,并不是长久之计。

所以还得在代码中加上

$excel->getActiveSheet()->getStyle('C')->getNumberFormat()
  ->setFormatCode(\PHPExcel_Style_NumberFormat::FORMAT_TEXT);

这段代码的意思是把C列所有的单元格初始化成text文本格式,这里注意我用的Thinkphp版本是3.2以上引入了命名空间所以加上了 “\” ,有的版本不需要加”\”,视情况而定。

添加以上两段代码

生成excel

右击鼠标设置单元格格式

phpexcel 导出 科学计数问题

默认就问文本格式,显示也正确。

大功告成————————————————————————————————————————————————————

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,994
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,507
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,350
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,135
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,768
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,845