ホームページ >バックエンド開発 >PHPチュートリアル >Zend Frameworkにファイルダウンロード機能を実装する方法
Zend Framework でファイルのダウンロード機能を実装する方法
前述したように、私の目的はコントローラー メソッドでファイルのダウンロードを実装することです
ダウンロードされるファイルはローカルディレクトリにあるファイルではなく、コントローラメソッド内で一時的に生成されたデータファイルです。
PHP はヘッダー情報を使用して、ブラウザが ZF を使用せずにダウンロードできるようにすることができます。
header("コンテンツタイプ: text/plain");
header("Accept-Range: バイト");
header("Content-Disposition:attachment; filename=".$filename);
header("キャッシュ制御: 必須再検証、事後チェック = 0、事前チェック = 0" );
header("プラグマ: no-cache" );
header("有効期限: 0" );
全く同じですが、ZF ではこのコードを downloadController の downloadAction() などのコントローラー メソッドに直接組み込み、同様にヘッダー情報を設定し、最後にデータを出力します。
$data を印刷します。
しかし、まだダウンロードはできません。
Zend フレームワークでダウンロードを実装する方法、または ZF がファイルのダウンロードに関する独自の情報を持っているかどうかを専門家に尋ねたいと思います。マニュアルを読んだところ、ファイルをアップロードするだけのようです。ダウンロードはできません
------解決策--------------------------------
レイアウト、viewRenderer を無効にする必要があります
パブリック関数 downloadAction() {
$this->_helper->getHelper ( 'layout' )->disableLayout ();
$this->_helper->getHelper ( 'viewRenderer' )->setNoRender ();
。 。 。