【CakePHP】ファイルダウンロード機能を作る
バージョン:CakePHP2.3 以降
CakePHP2.2まではメディアビューが使用できましたが、CakePHP 2.3でメディアビューは撤廃となったので、
cake-response-fileを使用します。
public function index() { $this->autoRender = false; $this->response->type('application/zip'); $this->response->file('files/test.zip', array('download' => true)); $this->response->download('test2.zip'); }
$this->response->file()の部分は「APP/webrootからの相対パス」か「フルパス」を記載します。
上記の例だとwebroot内の「files/test.zip」というファイルを「test2.zip」という名前でダウンロードすることになります。