ホームページ  >  記事  >  バックエンド開発  >  Web サイトのファイルダウンロードの原則に関する簡単な説明

Web サイトのファイルダウンロードの原則に関する簡単な説明

WBOY
WBOYオリジナル
2016-07-29 09:08:521923ブラウズ

今夜は、ウェブサイトのファイルダウンロードの原理について、以下のコードを使って分析してみましょう。 ? & Lt;? Php function double ($ file_name) {

header ("content-type: text/html; charset = uTF-8"); file_exists 関数が中国語を理解しないように変換します。


$file_name = iconv("utf-8","gb2312",$file_name);
$path = $_SERVER['DOCUMENT_ROOT']'
// ダウンロードしたファイルの絶対ディレクトリを取得します $file_path = $ PATH. '/'. $ FILE_NAME; // ダウンロードするファイルのパス
if (! File_exists ($ file_path)) {

'が存在しません! ';

exit();}


// ダウンロードされたファイルを共有するには、最初にメモリに読み込む必要があります
// 注: サーバーからのダウンロードに関連するファイル操作はすべて最初に実行する必要がありますサーバーはファイルをメモリに読み込みます

$fp = fopen($file_path, 'r');

$file_size = filesize($file_path); // ファイルの合計サイズを取得します
// PHP を使用する必要がありますファイルをダウンロード Header // このコードを通じて、クライアントのブラウザはサーバーから返されたファイル形式を知ることができます
Header("Content-type: application/octet-stream");
Header("Accept-Ranges: bytes") ; サーバーによって返されたファイルの名前 download

Header("Content-Disposition:attachment; filename=".$file_name); $buffer = 1024; サーバーに大きな負荷をかけないようにします。したがって、一度に読み取られるのは 1024 バイトだけです C $ file_count = 0;
// Feof: ファイルの終わりを読み取ります

While (! Feof ($ fp) && $ file_count & lt; $ file_size) { / / fopen を通じて、ファイルがメモリに置かれました。メモリから fread を読み込んでダウンロードします
$file_content = fread($fp, $buffer); ; ダウンロードの原理は、将来ダウンロード機能を実行する際のヒントになれば幸いです。十分!



上記では、コンテンツの側面も含めて、Web サイトのファイルのダウンロードの原則を簡単に紹介しましたが、PHP チュートリアルに興味のある友人に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。