没有在 php 中使用 mpdf 生成 PDF
Posted
技术标签:
【中文标题】没有在 php 中使用 mpdf 生成 PDF【英文标题】:PDF not getting generated using mpdf in php 【发布时间】:2014-04-30 13:37:04 【问题描述】:我正在使用 mpdf 库从 php 中的 html(table) 内容生成 pdf。我正在使用以下代码
<?php
session_start();
$html=$_POST['html'];
include 'mpdf.php';
$mpdf=new mPDF();
$mpdf->WriteHTML($html);
$mpdf->Output();
exit;
?>
当 html 表格的大小较小时,例如大约 100 行,则可以正确生成 PDF。但是当表格的大小更大时,比如大约 1000-2000 行,则不会生成 pdf。
mpdf 有大小限制吗?可以做些什么来解决这个问题?或者还有其他更好的库可以在 php 中生成 pdf
我已尝试使用此代码 ini_set('memory_limit', '256M');
在 php.ini
中增加分配给 256,512 和 1024 mb 的内存
我也尝试增加时间限制,它现在正在生成 PDF,但需要更多时间来生成并且 PC 变慢。如何释放内存?
【问题讨论】:
你试过设置时间限制吗? 其实没有出现超时错误。还需要设置时间限制吗? 尝试增加一个更高的时间限制,看看会发生什么。 它适用于增加时间限制。生成 PDF 需要花费大量时间并使整个系统变慢。生成pdf后有什么方法可以释放内存 【参考方案1】:试试
ini_set('max_execution_time', 0);
ini_set("memory_limit", "2G");
$mpdf->packTableData = true;
像往常一样,要警惕不良嵌套、未封闭的标签、不正确的转义或错误的 colspan 设置。 用http://validator.w3.org/检查生成的HTML代码
【讨论】:
生成 PDF 需要花费大量时间并使整个系统变慢。生成pdf后有什么方法可以释放内存以上是关于没有在 php 中使用 mpdf 生成 PDF的主要内容,如果未能解决你的问题,请参考以下文章
Yii, Php, mPDF, 生成带有不同方向小部件的 pdf