IO_TCPDF生成的最大限制

时间:2015-01-15 21:02:15

标签: symfony io tcpdf

我正在尝试使用IO TCPDF导出pdf(我正在使用Symfony 2)但是当我尝试导出的数据量超过650行时,我收到以下错误消息:

"Fatal error: Maximum execution time of 30 seconds exceeded in /var/www/html/AiresProxyAudit/vendor/tcpdf/tcpdf.php on line 23099" 

我更改了这些变量memory_limitmax_execution_time的值,以便增加我可以导出的数据量,但每次发生时都是相同的。我究竟做错了什么?这是我的代码。 谢谢,希望你们能帮助我。

public function export_urlAction($ name){         $ usuario = $ this-> get('security.context') - > getToken() - > getUserName();

    $dm = $this->get('doctrine.odm.mongodb.document_manager')
            ->getRepository('ReportesBundle:RporURL')
            ->url($this->get_id($usuario,$name));

    $totalurls = $this->get('doctrine.odm.mongodb.document_manager')
            ->getRepository('ReportesBundle:RTotales')
            ->total($this->get_id($usuario,$name), "url");

    $reportes = array();
    $totales = array();

    foreach ($dm as $value) {


        $reportes[] = $value;
    }

    foreach ($totalurls as $value) {
        $totales[] = $value;
    }

    $html = $this->renderView('ReportesBundle:PDF:pdfurl.pdf.twig', array('reporte' => $reportes, 'totales' => $totales));

    //io_tcpdf will returns Response object
    return $this->get('io_tcpdf')->quick_pdf($html);
}

1 个答案:

答案 0 :(得分:0)

我找到了解决方案,我将pdf生成分为3个twig模板: $ arrayHtmll = array();         $ html = $ this-> renderView(' ReportesBundle:PDF:pdfurl.pdf.twig',array(' reporte' => $ totalRUrl [0],' totales' => $ totales));
        $ arrayHtmll [] = $ html;         for($ index = 1; $ index< count($ totalRUrl)-1; $ index ++){             $ html = $ this-> renderView(' ReportesBundle:PDF:pdfurlmedio.pdf.twig',array(' reporte' => $ totalRUrl [$ index],&#39 ; totales' => $ totales)); // agregue el twig del medio             $ arrayHtmll [] = $ html;         }         $ html = $ this-> renderView(' ReportesBundle:PDF:pdfurlfinal.pdf.twig',array(' reporte' => $ totalRUrl [count($ totalRUrl)-1 ],' totales' => $ totales));
        $ arrayHtmll [] = $ html;

foreach($ arrayHtmll as $ value){             $ fff-> writeHTML($ value,false,false,true,false,'');

我使用mongo数据库探测了26020个文档,并且我没有生成它的问题。我将php文件的变量memory_limit的值更改为256。