ホームページ  >  記事  >  バックエンド開発  >  PHPヘッダーでのContent-dispositionの詳細な使用法_PHPチュートリアル

PHPヘッダーでのContent-dispositionの詳細な使用法_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:55:571792ブラウズ

この記事では、PHPヘッダーでのContent-dispositionの使用法を詳しく紹介します。ヘッダーの使用法を知りたい人は参考にしてください。

Content-disposition は MIME プロトコルの拡張機能であり、MIME ユーザー エージェントに添付ファイルの表示方法を指示します。 content-disposition は、要求されたコンテンツがファイルとして保存されるとき、またはアクセス中にファイルのダウンロード ダイアログ ボックスがポップアップするときに、ユーザーがデフォルトのファイル名を指定するように実際に制御できます。


形式の説明:

content-disposition = "Content-Disposition" ":" disposition-type *( ";" disposition-parm )

フィールドの説明:

Content-Disposition は属性名です

Disposition-type はどのような方法でダウンロードされるか、たとえば添付ファイルは添付ファイルとしてダウンロードされます

disposition-parm は保存時のデフォルトのファイル名です

サーバーがクライアントのブラウザにファイルを送信するとき、それがブラウザでサポートされているファイル タイプであれば、通常、txt、jpg などのファイルはデフォルトでブラウザによって開かれ、ファイルに直接表示されます。ユーザーに保存を求めるメッセージが表示される必要がある場合は、処理に Content-Disposition を使用するには、添付ファイルを追加することが重要です:

コードは次のとおりです コードをコピー

Response.AppendHeader("Content-Disposition","attachment;filename=FileName.txt");

注: この方法では、保存するか開くかをブラウザーに尋ねられ、開くことを選択した場合でも、IE を直接使用するのではなく、メモ帳などの関連プログラムを使用して開きます。

Content-Disposition は、ユーザーが要求されたコンテンツをファイルとして保存する場合に、デフォルトのファイル名を提供します。具体的な定義は次のとおりです:

コードは次のとおりです コードをコピー

content-disposition = “コンテンツの配置” “:”

性質の種類 *( ";" 性質-parm )

disposition-type = “添付ファイル”

disposition-parm = ファイル名-extension-parm

filename-parm = “ファイル名” “=” 引用符付き文字列

disp-extension-token = トークン

disp-extension-parm = トークン “= ( トークン | 引用符付き文字列 )

上記から、具体的な例がわかります:

Content-Disposition: 添付ファイル名 = "ファイル名.xls"

もちろん、filename パラメーターにはパス情報を含めることができますが、User-Agnet はこの情報を無視し、パス情報の最後の部分のみをファイル名として使用します。応答タイプが application/octet-stream の場合にこのヘッダー情報を使用すると、内容を直接表示するのではなく、「ファイルのダウンロード」ダイアログ ボックスをポップアップ表示して、次のステップを実行することを意味します。 「開く」または「保存」します。

メモ:

1. ブラウザーにダウンロード ダイアログ ボックスが表示されるようにするために、コード内で Content-Disposition が使用されている場合。 response.addHeader("Content-Disposition", "attachment"); ブラウザのキャッシュを無効にする操作を行っていないことを必ず確認してください。以下の通り:

それ以外の場合、ダウンロード機能は Opera と Firefox では正常に機能しますが、IE では機能しないことがわかります
コードは次のとおりです コードをコピー

response.setHeader("プラグマ", "キャッシュなし"); response.setHeader("キャッシュ制御", "キャッシュなし"); response.setDateHeader("有効期限", 0);

www.bkjia.com本当http://www.bkjia.com/PHPjc/632208.html技術記事この記事では、php ヘッダーの Content-disposition の使用法を詳しく紹介します。ヘッダーの使用法を知りたい人は参考にしてください。コンテンツの配置は MIME プロトコルの拡張です...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。