PHPExcel如何设置某列的格式为数值
程序员文章站
2024-01-03 22:18:10
...
phpexce 数据库中值为0的字段,通过PHPExcel导出到Excel里怎么就变成空白的了,能不能让它显示为0呢? PHPExcel版本为1.7.9 ,导出格式为Excel2003。下面的代码是在网上找的,但一直没有测试成功,还请有这方面经验的朋友指点一二。
//设置单元格内容的数字格式。 // //如果使用了 PHPExcel_Writer_Excel5 来生成内容的话, //这里需要注意,在 PHPExcel_Style_NumberFormat 类的 const 变量定义的 //各种自定义格式化方式中,其它类型都可以正常使用,但当setFormatCode //为 FORMAT_NUMBER 的时候,实际出来的效果被没有把格式设置为"0"。需要 //修改 PHPExcel_Writer_Excel5_Format 类源代码中的 getXf($style) 方法, //在 if ($this->_BIFF_version == 0x0500) { (第363行附近)前面增加一 //行代码: //if($ifmt === '0') $ifmt = 1; // //设置格式为PHPExcel_Style_NumberFormat::FORMAT_NUMBER,避免某些大数字 //被使用科学记数方式显示,配合下面的 setAutoSize 方法可以让每一行的内容 //都按原始内容全部显示出来。 $objStyleA5 ->getNumberFormat() ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER);
设置格式// Set cell number formatsecho date(’H:i:s’) . ” Set cell number formats\n”;$objPHPExcel->getActiveSheet()->getStyle(’E4′)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE);$objPHPExcel->getActiveSheet()->duplicateStyle( $objPHPExcel->getActiveSheet()->getStyle(’E4′), ‘E5:E13′ );
回复讨论(解决方案)
怎么人遇到过这种问题吗、?
估计0是null,所以不显示了,可以换个思路,让他显示为字符串
$number = 0;
echo ''.$number