2017-01-15 78 views
1

我有一個從文件系統讀取的pdf文件,現在我可以直接使用echo將其顯示給用戶。這是我做的:使用GuzzleHttp下載pdf文件流

$file = $client->open($storage_root); 
    header('Content-type: application/pdf'); 
    header('Content-Disposition: inline; filename="' . 'sample' . '.pdf"'); 
    header('Cache-Control: private, max-age=0, must-revalidate'); 
    header('Pragma: public'); 
    echo ($file->getContents()); 

但我有一個要求,以某種方式保存在一個臨時位置的文件。關於我如何做到這一點的任何想法。

幫助讚賞!

+0

請解釋你的意思是將文件存儲在臨時位置 –

+0

@NadirLatif需要合併此pdf以及我保存在磁盤上的其他mpdf對象。出於這個原因,我必須將文件保存在磁盤上,例如'/usr/local/temp/xxx.pdf' – Shrav

+0

您可以使用Php複製功能。它將文件從源文件複製到目標文件:http://php.net/manual/en/function.copy.php –

回答

0

我假設你已經保存了PDF的內容,保存在$file?在這種情況下,你可以使用:

<?php 

header("Content-Description: File Transfer"); 
header("Content-Type: application/octet-stream"); 
header("Content-Disposition: attachment; filename='" . basename($file) . "'"); 

readfile ($file); 

?> 

希望這有助於!