我无法使用domPDF创建实际的PDF

时间:2014-05-26 07:43:08

标签: .htaccess codeigniter helper dompdf

我无法让domPDF工作。

我已经完成了这篇文章:https://github.com/EllisLab/CodeIgniter/wiki/PDF-generation-using-dompdf - 有一个例外:我从Google(https://code.google.com/p/dompdf/downloads/detail?name=dompdf_0-6-0_beta3.zip&can=2&q=)加载了它,因为GitHub中缺少文件(出于某种原因)

我尝试将帮助者放在system/helpersapplication/helpers中 - 但仍有同样的问题。

我在控制器中有这个:

    $this->load->helper(array('dompdf', 'file'));

    //I know this is correct because $html returns content of view
    $html = $this->load->view('actual viewfile', $content_data, TRUE); 

    //Try to create a pdf
    pdf_create($html, '/pdf/test');               //It seems it's trying to create a pdf

    //But...
    echo 'FINAL'; //...it never reaches this line
    exit;

我在pdf - root(非应用程序根目录)中创建了一个名为www的文件夹

我不知道它有所不同,但这就是我的htaccess的样子:

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

我也尝试过改为

define("DOMPDF_AUTOLOAD_PREPEND", true) in dompdf_config.custom.inc.php.

似乎它正在尝试创建PDF但似乎没有创建任何内容(它永远不会到达最终的回声。可能出现什么问题?

更新 经过一些搜索,我在我的apache错误日志中得到了这个:

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 79 bytes) in C:\Program Files\wamp\www\mellomgarden2\application\helpers\dompdf\include\style.cls.php on line 718

1 个答案:

答案 0 :(得分:1)

我看来这个domPDF正在使用大量的内存资源,因为当我测试覆盖php的内存限制时:

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

它有效。

视图本身包含大量数据,因此这就是问题所在。我不建议像这样覆盖memory_limit。它纯粹是出于测试目的。