*PearでFileのダウンロード [#z9ca093f]

RIGHT:更新日&lastmod();  

**クラスの確認 [#k057b153]

Archive_Tar,Archive_Zip,HTTP_Download,HTTP_Headerあたりが必要なようだ

HTTP_DownloadとArchive_Zipをインストールしてみる

 # pear list
 Installed packages, channel pear.php.net:
 =========================================
 Package          Version State
 Archive_Tar      1.3.7   stable
 Archive_Zip      0.1.1   beta
 Console_Getopt   1.2.3   stable
 HTTP             1.4.1   stable
 HTTP_Download    1.1.3   stable
 HTTP_Header      1.2.0   stable
 MIME_Type        1.2.0   stable
 PEAR             1.9.1   stable
 Structures_Graph 1.0.3   stable
 System_Command   1.0.6   stable
 XML_Util         1.2.1   stable


**指定ファイルをダウンロード [#f437c767]

以下のファイルをリンクしてそこをアクセスする。

-DLファイル名 /home/okada/080621_Festival/DSCN0964.JPG
-DLされた時のファイル名 download.jpg

指定パスは必ずしもWebアクセス内である必要はない


''download.php''

 <?php
 
 require_once("HTTP/Download.php"); 
 
 $filename="/home/okada/080621_Festival/DSCN0964.JPG";
 
 $params=array(
         "file"=>$filename,
         "contenttype"=>"image/jpeg",
         "contentdisposition"=>array(HTTP_DOWNLOAD_ATTACHMENT, "download.jpg"),
 );
 
 
 HTTP_Download::staticSend($params);
 ?>

**指定ディレクトリを指定してそのフォルダをすべて圧縮DL 1 [#j4c8c2f9]

こちらを推奨とあるページがあった

 <?php
 
 require_once("HTTP/Download/Archive.php");
 
 HTTP_Download_Archive::send(
   "download.zip",     // DLファイル名
   array("./temp/"),   // DLファイルが格納されているディレクトリ
   HTTP_DOWNLOAD_ZIP,  // 圧縮方式
   "",                 // DL後解凍時前につけるパス
   "/temp/"            // DL後解凍時削除するパス この例ではないとtemp/(ファイル名になる。ある場合はtemp/がつかない
 );
 
 ?>

|定数             |圧縮方式|
|HTTP_DOWNLOAD_ZIP|zip|
|HTTP_DOWNLOAD_TAR|tar|
|HTTP_DOWNLOAD_TGZ|tgz|
|HTTP_DOWNLOAD_BZ2|bz2|


**指定ディレクトリを指定してそのフォルダをすべて圧縮DL 2 [#h0c1594f]



 <?php
 
 require_once("HTTP/Download.php");
 
 HTTP_Download::sendArchive(
   "download.zip",
   array("./temp/"),
   HTTP_DOWNLOAD_ZIP,
   "",
   "/temp/"
 );
 
 ?>


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS