My Photo

« PHPメモ027:ファイルのアップロード | Main | VW第1章クリア、など #FF11 »

March 31, 2012

PHPメモ028:ファイルのダウンロード

ブラウザはHTTPヘッダでファイルを表示するかダウンロードの処理をするかを判断している。
HTTPヘッダの送信は header()関数を使用する。

void header(<文字列>)
文字列をHTTPヘッダとして送信する。

HTTPヘッダはデータより前になければならないので、header()関数はスクリプトの先頭にかかなければならない。

ファイルをダウンロードさせたい場合は、以下のサンプルコードのようにHTTPヘッダの Content-Type の値を "application/octet-stream" とすればよい。

$filename = "sample.jpg";
$filesize = filesize($filename);

header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"${filename}\"");
header("Content-Length: ${filesize}");
readfile($filename);

// readfile()の代わりにこれでもよい
// echo file_get_contents($filename);

« PHPメモ027:ファイルのアップロード | Main | VW第1章クリア、など #FF11 »

PHP」カテゴリの記事

Comments

Post a comment

(Not displayed with comment.)

TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/26461/54351997

Listed below are links to weblogs that reference PHPメモ028:ファイルのダウンロード:

« PHPメモ027:ファイルのアップロード | Main | VW第1章クリア、など #FF11 »

May 2017
Sun Mon Tue Wed Thu Fri Sat
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
無料ブログはココログ

日本blog村

  • にほんブログ村 IT技術ブログへ
  • にほんブログ村 アニメブログへ
  • にほんブログ村 サッカーブログ アルビレックス新潟へ

好きな音楽家

メモ

XI-Prof