我有一个重要的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();
)
有没有人有这种问题的服务器端解决方案?
答案 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