Re: Report generation as pdf and csv in php application for huge record set

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2011-07-13, at 9:59 PM, Midhun Girish wrote:
> 
> I have an erp application developed in php (zend framework actually). There
> are many reports which the admin level users can take from the application.
> Some reports have more than 600,000 records. The viewing of reports in the
> browser is fine as i have paginated the result. But when it comes to
> exporting the entire report as pdf and in excel format, im in trouble. I use
> fpdf for pdf generation and  a custom class for converting result to excel.
> Both these fails when the number of records exceeds 500. Now i have
> pagianted the report generation and users can download the pdf page wise.
> But that is not the exact requirement. Im in need of a tool to generate pdf
> and excel(or csv) for large data set. I came across
> http://www.htmldoc.org/when i googled for one. Has anyone in the list
> has faced a similar problem.
> How exactly is report generation possible when the number of records is
> extremely huge? Is there a good solution which can be implemented in php?
> Please help.
-----------------
	Hi there. FAQ #16 on:

<http://www.fpdf.org/en/FAQ.php#q16>

has some useful info on handling large files:

16. What's the limit of the file sizes I can generate with FPDF?

There is no particular limit. There are some constraints, however: 

- The maximum memory size allocated to PHP scripts is usually 8MB. For very big documents, especially with images, this limit may be reached (the file being built into memory). The parameter is configured in the php.ini file. 

- The maximum execution time allocated defaults to 30 seconds. This limit can of course be easily reached. It is configured in php.ini and may be altered dynamically with set_time_limit(). 

- Browsers generally have a 5 minute time-out. If you send the PDF directly to the browser and reach the limit, it will be lost. It is therefore advised for very big documents to generate them in a file, and to send some data to the browser from time to time (with a call to flush() to force the output). When the document is finished, you can send a redirection to it or create a link. 
Remark: even if the browser times out, the script may continue to run on the server.


	HTH


George Langley
Multimedia Developer

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux