将重HTML文件转换为PDF

时间:2013-10-11 12:48:55

标签: php html pdf mpdf

我有一个重要的html文件转换为PDF文件。

我使用mpdf来转换我的HTML:

$file_content = file_get_contents($dir . '/' . $filehtml);
$mpdf = new mPDF('', '', 0, 'Helvetica', 15, 15, 50, 25, 8, 8);
$mpdf->useSubstitutions = false;
$mpdf->CSSselectMedia='mpdf';

$mpdf->allow_charset_conversion = true;
$mpdf->charset_in = 'cp1252';
$mpdf->WriteHTML($file_content);
$mpdf->Output($dir . '/' . $filename, 'F');

效果很好。 一般

问题是我的文件很重:~17.5Mb ,所以file_get_contents会给我一个错误:

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 18114800 bytes)

我尝试了另一个解决方案: 我尝试将$mpdf->WriteHTML($str);放入foreach()(用于生成我的HTML文件),而不是生成HTML文件。

问题是执行时间超过1小时,这绝对是不可接受的,而生成HTML文件需要大约1.5秒(根据js new Date().getTime();


有没有人有这种问题的服务器端解决方案?

2 个答案:

答案 0 :(得分:2)

改变php.ini

memory_limit = 64M ;//maximum allotted size

如果没有php.ini访问权限,则添加.htaccess

php_value memory_limit 64M

或在脚本文件中添加以下行

ini_set('memory_limit', '-1');

答案 1 :(得分:0)

尝试在.htaccess文件中添加: php_value memory_limit 128M