PHPで出力ファイルをダウンロード形式にする
- 2007年06月15日
- category:PHP
- Comment(0)
- Trackback(0)
PHPの出力をダウンロード形式にするにはheader()でContent-Typeを指定してreadfile()で出力します。コードは下記のような感じ。
<?php
$file = "test.txt";
header("Content-type: text/plain");
header("Content-Disposition: attachment; filename=$file");
readfile($file);
?>
このコードを実行すると「ダウンロードしますか?」のウインドウが開きます。この例ではテキストファイルなのでContent-Typeは「text/plain」になっていますが、ファイルの種類によってContent-Typeは様々です。
| ファイル形式 | Content-Type |
|---|---|
| HTML | text/html |
| PLAIN テキスト | text/plain |
| CSS | text/css |
| JPEG | image/jpeg |
| GIF | image/gif |
| PNG | image/x-png |
| application/pdf | |
| tar | application/x-tar |
| zip | application/zip |
| CSV | application/x-csv |
| Excel | application/vnd.ms-excel |
| パワーポイント | application/vnd.ms-powerpoint |
まだまだ沢山ありますが、実際使用するのはこのくらいかなと。下記にContent-Typeの一覧が載っています。
関連書籍
- Prev Entry
- PHPの画像アップロードライブラリ「CLASS.UPLOAD.PHP」を使ってみた
- Next Entry
- ブログエントリーをTwitterにポストするTwitBackerを試してみた
トラックバックURL
http://webtech-walker.com/archive/2007/06/15143606.html/trackback
※トラックバックを受け付けてから表示するまでにしばらく時間がかかる場合があります。

PHPによるWebアプリケーションスーパーサンプル 活用編