我有 944 行数据,我有一个链接可以下载 PDF 格式的所有这些数据。我正在使用 DOM PDF 生成 PDF 文件。
问题是当我单击下载链接时,我收到以下错误消息
Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 86 bytes) in ......
因此,为了摆脱这个错误,我在生成 PDF 之前使用了以下代码:
ini_set('memory_limit', '-1');
但随后我收到以下错误消息:
Server Error
The server for http://www.dorresms.com/student/export_studentcontact took too long to respond. It may be overloaded.
当我的数据较少时,我下载文件没有任何问题。
我正在使用共享主机,我检查了 php ini;我得到以下信息:
资源限制:memory_limit (32MB)(脚本可能消耗的最大内存量 256M)
你能告诉我如何解决这个问题吗?
更新
如果我将查询限制为 280 行,那么它会生成 PDF,超过 280 行会产生问题。
以下是我生成 PDF 的代码。(我正在使用 Codeigniter)
ini_set('memory_limit', '-1');
include_once('dompdf/dompdf_config.inc.php');
$account_id=$this->authex->get_account_id();
$this->load->model('mod_student');
$data['records'] = $this->mod_student->get_all_student($account_id);
$html= $this->load->view('student/view_studentcontact_pdf',$data,true);
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->set_paper("a4", "" );
$dompdf->render();
$dompdf->stream('Contact_List', array("Attachment" => 0));