我是通过PHPExcelClasses如下方法将MYSQL数据导出到EXCEL里,但是当为身份证时, 就变为科学计数法,有什么办法可以提前将要导入身份证号的EXCEL字段设置为文本,来正常显示身份证吗?
set_include_path(get_include_path() . ";" . '../Common/PHPExcelClasses/');
include 'PHPExcel.php';
//或者include 'PHPExcel/Writer/Excel2007.php';
include 'PHPExcel/Writer/Excel5.php'; //用于输出.xls的
//创建一个excel
$objPHPExcel = new PHPExcel();
//保存excel—2007格式
//$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
//$objWriter->setOffice2003Compatibility(true);
$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel); /
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->setCellValue('A1', '学员编号');
$objPHPExcel->getActiveSheet()->setCellValue('B1', '身份证号');
..............................
$objWriter->save("info.xls");

解决方案 »

  1.   

    导出的值前加 符号表空格,会自动转为字符
      

  2.   


    你先按照我的方法试试再说。不是要你改数据库里的数据,只是导出到Excel的数据要做点小修改。
      

  3.   

    这里找到可心显式指定内容类型,但不会用了
    http://www.cnblogs.com/benben7466/archive/2009/03/16/1413195.html
    //显式指定内容类型    
    $objActSheet->setCellValueExplicit('A5', '847475847857487584',    
                                        PHPExcel_Cell_DataType::TYPE_STRING);