2016-09-20 14 views
0

私はコントローラでファイルをダウンロードしようとしていますが、コンソールではダウンロードボックスの代わりに奇妙な文字しか表示されません。私はこのトピックSymfony2 - Force file downloadに従っています。symfony - ダウンロードファイル

何が起こっているのか分かりません...最も簡単な解決策を見つけようとしています。 はここに私のコードです:

$response = new Response(file_get_contents($file->realPath), 200, array(
      'Content-Type' => $file->mimeType, 
      'Content-Length' => filesize($file->realPath), 
      'Content-Disposition' => 'attachment; filename=' . $file->name, 
     )); 
$response->send(); 

私もヘッダで最も基本的な例を使用しようとした()とのReadFile()。 私のサーバーに特別な設定が必要ですか?乾杯。

答えて

3

このようなレスポンスを再構築する代わりに、symfonyの組み込みのBinaryFileResponseを使用することができます。

use Symfony\Component\HttpFoundation\BinaryFileResponse; 

$response = new BinaryFileResponse($file); 

documentation about serving filesもご覧ください。

関連する問題