Search code examples
phpdompdf

Save and download PDF


I need to do 2 things together & at the same time with DOMPDF.

I need to do the following together - is this possible?

//print the pdf file to the screen for saving
$dompdf->stream("pdf_filename_".rand(10,1000).".pdf", array("Attachment" => false));
//save the pdf file on the server
file_put_contents('/home/stsnew/public_html/pdf/file.pdf', $dompdf->output()); 

The above works fine if $dompdf->stream and $dompdf->output() are done separately/individually , but when I try to run them together as shown above, it just crashes.

Any help/advice would be really appreciated.


Solution

  • Why dont you swap them round create the pdf first as a file and then stream the created file back ?

    $file_to_save = '/home/stsnew/public_html/pdf/file.pdf';
    //save the pdf file on the server
    file_put_contents($file_to_save, $dompdf->output()); 
    //print the pdf file to the screen for saving
    header('Content-type: application/pdf');
    header('Content-Disposition: inline; filename="file.pdf"');
    header('Content-Transfer-Encoding: binary');
    header('Content-Length: ' . filesize($file_to_save));
    header('Accept-Ranges: bytes');
    readfile($file_to_save);