[PHP-users 25451] 任意のHTTPサーバのファイルをコマンドライン上からダウンロードしたい
Iso, Toshitaka
toshitaka.iso @ hp.com
2005年 4月 24日 (日) 13:53:22 JST
こんにちは。
いつもお世話になっております。
任意のHTTPサーバ上にあるファイル(http://www.hoge.com/20050424.exe)を
IEからではなく、コマンドライン上からダウンロードするPHPスクリプトを作成しているのですが、
画面上にバイナリファイルの中身が標準出力されてしまい、保存されません。
Web上でいろいろ探してみたのですが、良いサンプルが見つからなかったため、
こちらで質問させていただきました。
希望する動きとしては、http://www.hoge.com/20050424.exeにアクセスして、
20050424.exeをローカルサーバ(PHPを実行したサーバ)のディレクトリに保存
するという動きです。
PHPのVersion=PHP 4.3.9
=========== ソースコード ===========
<?php
$path_file="http://www.hoge.com/20050424.exe";
$filename = basename($path_file);
$content_length = @filesize( $path_file );
/* ダウンロード用のHTTPヘッダ送信 */
header("Content-Disposition: inline; filename=\"".basename($path_file)."\"");
header("Content-Type: application/octet-stream");
header("Content-Length: $content_length");
/* 保存処理 */
$fp = @fopen( "$path_file", "rb" ) ;
@fpassthru( $fp );
?>
PHP-users メーリングリストの案内