2016-08-22 7 views
0

私は非常にスリムなフレームワークには新しく、画像ファイルをダウンロードしようとしています。 phpでローカルでうまく動作します。しかし、スリムのためにサーバー上で同じコードを適用するときには動作しません。たくさんの検索がありますが、運がない場合はherethis oneとなります。ここに私のコードですコンテンツタイプ:画像/ jpegがローカルでライブ作業をしていません

$app->get('/image', function ($request, $response, $args) { 
//header('Content-type: image/png'); 
//header('Content-Disposition: attachment; filename=go-logo.jpg'); 
//$contents = file_get_contents(getcwd() . '/' . $_GET['img']); 
$filename=getcwd() . '/' . $_GET['img']; 
header("Content-Length: " . filesize($filename)); 
header('Content-Type: application/octet-stream'); 
header('Content-Disposition: attachment; filename=go-logo.jpg'); 
readfile($filename); 
return $contents; 

}); 

enter image description here

エラーは、htmlファイルで表示されています。私はあなたが応答オブジェクトでヘッダーを設定する必要があり、この

enter image description here

+0

働いていないとはどういう意味ですか? '$ contents'もどこにも定義されていません。 –

+0

申し訳ありません。スクリーンショットを添付するのを忘れました – MKD

+0

今すぐ確認してください – MKD

答えて

0

ようにしたいです。 次に、ファイルをレスポンス本文に書き込みます。

return $response->withHeader("Content-Type", "application/octet-stream") 
     ->write($fileContents); 
+0

素晴らしい、その作業。どうもありがとう – MKD

関連する問題