$activeSheet->getStyle($colNum)
            ->getNumberFormat()
            ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUM    BER_COMMA_SEPARATED1);
执行这个方法下载的时候很慢,有什么方法解决吗?就是几百条数据可以下载下来,四千条数据就下载不下来了!

解决方案 »

  1.   

    $activeSheet->getStyle($colNum)
                ->getNumberFormat()
             ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1);
    执行这个方法下载的时候很慢,有什么方法解决吗?就是几百条数据可以下载下来,四千条数据就下载不下来了!
      

  2.   

    PHPExcel本身就不是一个轻量级的插件,它更适用于输出比较复杂格式数据,如果格式比较简单的话,格式没有什么太多的要求的话,可以利用PHP中的函数,不过,PHPExcel处理四千条数据也比较容易吧!怎么下载不下来呢!
      

  3.   


    这段代码的作用是Set cell number formats(设置单元格的数字格式),从你的代码可以看出,你的每行都会设置单元格的格式,应该是在循环里,当然会慢很多...
      

  4.   


    $activeSheet->getStyle($colNum)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1);
    这段代码完全可以不放在循环里,若是想设置单元格格式,可以 用
    $activeSheet->getStyle("A1:A9")->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1);,getStyle("A1:A9")中可以先设置好单元格的格式,然后只循环数据就可以了...相信这样,会比你每次循环执行效率要高很多
      

  5.   

    没明白设置单元格样式和下载有什么关系。
    这是我的做法,设置a1至ab1区域边框.getStyle 是可以对区域进行设置的
    $sheet->getStyle ( "A1". ":" . "AB1")->getBorders ()->getBottom ()->setBorderStyle ( PHPExcel_Style_Border::BORDER_THIN );