gpt4 book ai didi

PHPExcel 发生超时

转载 作者:行者123 更新时间:2023-11-29 00:31:38 25 4
gpt4 key购买 nike

请帮助我解决将大数据导出到 excel 格式 xlsx 的问题。我一次将近 45000 条记录导出到单个文件,它在没有保存文件的情况下超时。mysql select 查询执行该大数据需要 21 秒。下面是我使用 PHP Excel 库将数据导出到 Excel 文件的代码。

 $sql2 = "SELECT * FROM Surveys";
$result2 = mysql_query($sql2);

while($row2 = mysql_fetch_assoc($result2))
{
$j=$rowscounter+2;
$sheet->setCellValue("A$j",$row2['brandname']);
$sheet->setCellValue("B$j",$row2['productname']);
$sheet->setCellValue("C$j",$row2['sname']);
$sheet->setCellValue("D$j",$row2['smobile']);
$sheet->setCellValue("E$j",$row2['semail']);
$sheet->setCellValue("F$j",$row2['country']);
$sheet->setCellValue("G$j",$row2['city']);
$sheet->setCellValue("H$j",$row2['sdob']);
$sheet->setCellValue("I$j",$row2['age']);
$sheet->setCellValue("J$j",$row2['comment']);
$sheet->setCellValue("K$j",$row2['outletcode']);
$sheet->setCellValue("L$j",$row2['username']);
$sheet->setCellValue("M$j",$row2['datetime']);
$sheet->setCellValue("N$j",$row2['duration']);
$rowscounter++;
}

// Rename worksheet
$sheet->setTitle('Survey-Report');
$objPHPExcel->setActiveSheetIndex(0);
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->setPreCalculateFormulas(false);
unlink("Survey-Report.xlsx");
$objWriter->save('Survey-Report.xlsx');
echo "ok";

更新:

我忘了说我已经尝试过 set_timout 等并在我的 php 文件中写了下面的代码。

set_time_limit(0);
ini_set('memory_limit','2500M');

最佳答案

您可以在脚本顶部添加:

set_time_limit (0);

这将禁用默认的 30 秒 php 超时。

或者您可以添加自定义秒数,请参阅 set_time_limit()

关于PHPExcel 发生超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16240104/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com