[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 メーリングリストの案内