Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php html到pdf-100k到200k记录_Php_Mysql_Pdf_Fpdf_Mpdf - Fatal编程技术网

Php html到pdf-100k到200k记录

Php html到pdf-100k到200k记录,php,mysql,pdf,fpdf,mpdf,Php,Mysql,Pdf,Fpdf,Mpdf,我有一个数据集,大约有100万条记录。我将生成一个超过10万行的pdf 我测试了MPDF(如果我使用html表生成大约1800条记录,内存就会耗尽)和Fpdf(生成大约40k条记录,基于表) 我不想让我的php应用程序占用全部内存来避免这个问题 我们是否有其他库可以在php中使用,一次性导出超过10万行? 我使用mpdf生成表的代码(我在这里排除了导出) $html=”“; $html.=”; $html.=“标题1”; $html.=“标题2”; $html.=“标题3”; $html.=“标

我有一个数据集,大约有100万条记录。我将生成一个超过10万行的pdf

我测试了MPDF(如果我使用html表生成大约1800条记录,内存就会耗尽)和Fpdf(生成大约40k条记录,基于表)

我不想让我的php应用程序占用全部内存来避免这个问题

我们是否有其他库可以在php中使用,一次性导出超过10万行? 我使用mpdf生成表的代码(我在这里排除了导出)

$html=”“;
$html.=”;
$html.=“标题1”;
$html.=“标题2”;
$html.=“标题3”;
$html.=“标题4”;
$html.=“标题5”;
$html.=”;
对于($i=0;$iWriteHTML($html);
$mPDF1->Output();
出口

不支持所有的HTML内容,特别是CSS样式。考虑在更小的数据集中获取数据,将200K行加载到内存中肯定会引起内存问题,因此加载一次1000行,然后输出到PDF,并一直保持1000条记录,直到没有剩下。确保在处理过程中处理每个记录集。TCPDF远远低于MPDF和FPDF。@Augwa的解决方案可能是实现$mPDF1->Output()最简单、最智能的方法;如果我在它输出数据后调用它,如果它离开其余的计算..另一种方法可能是保存pdf..继续打开它并附加数据。。
   $html="<table>";
              $html.="<tr>";
              $html.="<td> <b> header 1</b></td>";
              $html.="<td> <b> header 2</b></td>";
              $html.="<td> <b> header 3</b></td>";
              $html.="<td> <b> header 4</b></td>";
              $html.="<td> <b> header 5</b></td>";
              $html.="</tr>";

              for($i=0;$i<1740;$i++){
              $html.="<tr>";
              $html.="<td>Data 1</td>";
              $html.="<td>Data 2</td>";
              $html.="<td>Data 3</td>";
              $html.="<td>Data 4</td>";
              $html.="<td>Data 5</td>";
              $html.="</tr>";
         }
        $html.="</table>";

        $mPDF1->WriteHTML($html);
        $mPDF1->Output();
        exit;