4-2PEAR HTTPTips327 簡単にファイルダウンロードサービスを行う
Level1
PointPEAR HTTP_Downloadを使う
HTTP_Downloadはクライアントのブラウザに対してファイルを送信することができるライブラリです。単にファイルの内容をfile_get_contents関数などを使ってファイルを読み込み、その内容をechoで出力してもダウンロードさせることは可能です。しかしその場合にはContent-Typeの設定やContent-Lengthなどダウンロード時特有のHTTPヘッダーを適切に設定するのは面倒です。またクライアントによってはContent-Lengthが誤っているとダウンロードできないような場合もあります。そのような時にHTTP_Downloadを使うと、簡単にクライアントにファイルダウンロードサービスを提供することができます。
リスト1を見てください。非常に短いプログラムです。HTTP_Downloadをインクルードしておき、4行目でダウンロードさせるファイルを指定します。ここではdownloadfile.txtというファイル名にしています。このファイルはテキストファイルでも画像やOffice文書でも何でも構いませんので自由に設定してください。6行目でHTTP_Downloadのオブジェクトを設定し、HTTP_Download::send()メソッドでファイルをクライアントのブラウザに対して送信します。
リスト1を実行する
この記事は会員限定です。会員登録をすると続きをお読みいただけます。
ログイン / 新規登録