2012-08-26 131 views
1
$source_path = 'https://bip.wzp.pl/attachments/' . $filename; 


    $opts = array(
     'http'=>array(
     'method'=>"GET", 
     'header'=>"Content-type: application/pdf", 
    ) 
    ); 

    $context = stream_context_create($opts);  

    $data = file_get_contents($source_path, false, $context); 

    if(($handle = fopen($dest_path, "w"))) { 
     fwrite($handle, $data); 
     fclose($handle); 
     return $filename_converted; 
    } 

$source_path是e.g:为什么我通过file_get_contents下载文件来损坏文件?

https://bip.wzp.pl/attachments/28172_StatutWojewództwa Zachodniopomorskiego.pdf

当我尝试它的浏览器,PDF文档里显示正常。

但通过PHP下载的文件,它总是被损坏。

编辑

我检查$data内容。它具有头版HTML:/ 奇怪把$source_path到浏览器返回PDF

回答

1

好像你尝试下载一个PDF,请尝试使用它保存为二进制文件:

fopen($dest_path, "wb") 
+0

谢谢,但我的问题是完全不同,而不是$ data中的pdf内容我有主页html:/ – keram

+0

确定尝试对您请求的URL进行URL编码。 –

+0

我以前在$ filename上试过urlencode,但它改变了我的URL,并且我总是在浏览器中获得首页而不是pdf。 – keram