2011-01-19 12 views
0

ファイルをダウンロードして保存します。 このコードをgzipファイルのダウンロードに使用しています。gzipファイルをPHPでダウンロードしてください。cURL

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $this->_params['url']); 
curl_setopt($ch, CURLOPT_VERBOSE, 0); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); 
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible;)"); 
curl_setopt($ch, CURLOPT_POST, true); 
$post = array("image_id"=> $this->_response_id, "format"=>$this->_response_format); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $post); 
$response = curl_exec($ch); 
curl_close($ch); 

しかし、結果の種類を印刷すると、文字列が表示されています(文字列形式のファイルを取得しています)。

この問題を解決するにはどうすればよいですか?

ありがとうございます

+0

私の質問と結びついたひとつのメモ:私が印刷するとき($ info = curl_getinfo($ ch、CURLINFO_CONTENT_TYPE);)私はimage/svg + xmlを見る@ goreSplatter、私はあなたのことを忘れています。あなたのコメント(私はあなたがそれを愛していることを知っている:)) –

答えて

1

あなたは次のオプションも含める必要があると思います。

CURLOPT_ENCODING 

"Accept-Encoding:"ヘッダーの内容を処理します。これにより、応答のデコードが可能になります。サポートされているエンコーディングは "identity"、 "deflate"、 "gzip"です。

p.s:回答を受け入れるか、質問を停止します。多分あなたも知っておく必要がありますthis

リンクを確認してthisリンクを試してみてください。

+0

私はこのすべてのオプションを試してみましたが、結果は同じです。 –

+0

私は次のように書く:$ info = curl_getinfo($ ch、CURLINFO_CONTENT_TYPE); curl_close($ ch); エコー '
'。 "タイプは:"。
'。$ info;タイプは: image/svg + xmlです。そして私はそれが何であるかを理解していません。 –

+0

更新された回答を見る – ayush

関連する問題