qishu_qiu 2019-10-17 17:30 采纳率: 0%
浏览 256

phpExcel 竖向合并单元格 导致CPU占用100%

phpExcel 导出 竖向合并单元格 导致CPU占用100%

foreach($data as $key => item) {
            $j = $i + 1;
            foreach ($item['examiner'] as $k => $examiner) {
                    if ($k == 0) {
                        $objPHPExcel->getActiveSheet()->setCellValue('A' . ++$i, ($key + 1));
                        $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, $item['province']);
                        $objPHPExcel->getActiveSheet()->setCellValue('C' . $i, $item['city']);
                    } else {
                        ++$i;
                    }

                    $objPHPExcel->getActiveSheet()->setCellValue('K' . $i, $examiner['not_pass_num']);
                    $objPHPExcel->getActiveSheet()->setCellValue('L' . $i, $examiner['unqualified']);
                    $objPHPExcel->getActiveSheet()->setCellValue('M' . $i, $examiner['money_total']);
                    $objPHPExcel->getActiveSheet()->setCellValue('N' . $i, $examiner['examiner_money']);
                    $objPHPExcel->getActiveSheet()->getRowDimension($i)->setRowHeight(32);
                }
                if ($i > $j) {
                    $objPHPExcel->getActiveSheet()->mergeCells("A{$j}:A{$i}");
                    $objPHPExcel->getActiveSheet()->mergeCells("B{$j}:B{$i}");
                    $objPHPExcel->getActiveSheet()->mergeCells("C{$j}:C{$i}");
                }
            }
 };

这段代码本地执行没有任何问题 放到服务器上 执行 进程就会占用100% CPU(持续占用)
经调试 发现 注释掉 $objPHPExcel->getActiveSheet()->mergeCells("A{$j}:A{$i}"); 这些纵向合并单元格的代码 再执行 进程就会恢复正常
哪位大佬知道这是怎么回事 帮帮忙!

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥50 易语言把MYSQL数据库中的数据添加至组合框
    • ¥20 求数据集和代码#有偿答复
    • ¥15 关于下拉菜单选项关联的问题
    • ¥20 java-OJ-健康体检
    • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
    • ¥15 使用phpstudy在云服务器上搭建个人网站
    • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
    • ¥15 vue3+express部署到nginx
    • ¥20 搭建pt1000三线制高精度测温电路
    • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况