当Excel输入的数字为11位以上时,软件默认会用科学计数法来显示。而我们使用PHPExcel导出数据时,像手机号、身份证号码等就会是科学计数的方式显示,这时客户就看不懂、搞不明白了,跟他说让他设置单元格格式都不会,还说你程序有问题。所以我们还是在根源上解决吧!
一、最粗暴的方法就是直接在数字前加一个空格使之成为字符串
$objActSheet->setCellValue('A1',' '.$value);
二、在设置值的时候指定数据类型(推荐)
$objActSheet->setCellValueExplicit('A1', '123456789012345678', PHPExcel_Cell_DataType::TYPE_STRING);
三、先设置值,再指定数据类型
$objActSheet->setCellValue('A1', '123456789012345678');
$objActSheet->getStyle('A1')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER);
玩儿