例:
PHP で指定した画像をダウンロードするには?ブラウザで開くのではなく?
<?php $file = "/tmp/dummy.tar.gz"; header("Content-type: application/octet-stream"); header('Content-Disposition: attachment; filename="' . basename($file) . '"'); header("Content-Length: ". filesize($file)); readfile($file);
Han Shuping が PHP ダウンロードについて話している事例を投稿します。お役に立てれば幸いです。ビデオを見る必要がある場合は、Han Shuping PHP ビデオ チュートリアル レクチャー 87 をご覧ください:
コードは次のとおりです:
1a63848717ad39002d551dabfd576cee30){
echo "b2b237229a52862805f60aaa8af3c116window.alert('toolarge')2cacc6d41bbb37262a98f745aa00fbf0";
return ;
}
//返されたファイル
header("Content-type: application/octet-stream") ;
//バイトサイズに応じて返す
header("Accept-Ranges: bytes");
// ファイルサイズを返す
header("Accept-Length: $file_size");ここでのクライアントのダイアログ ボックスは、ファイル名
header("Content-Disposition:attachment; filename=".$file_name);
//データをクライアントに送信します
$buffer=1024; //ダウンロードのセキュリティを確保するために、ファイル バイト読み取りカウンターを 1 つ作成することをお勧めします
$file_count=0
//この文は、ファイルが終了したかどうかを判断するために使用されます
while(!feof($fp) && ($file_size-$file_count> ;0) ){
$file_data=fread ($fp,$buffer);
// 読み取られたバイト数をカウントします
$file_count+=$buffer;
// データの一部をブラウザに送信します。 $file_data;
}
//ファイルを閉じる
fclose($fp);
//関数が利用可能かどうかをテストする
down_file("Shunping.jpg","/http/down/");
?>