ホームページ > バックエンド開発 > PHPチュートリアル > PHP ファイルのダウンロード原理の簡単な分析、_PHP チュートリアル

PHP ファイルのダウンロード原理の簡単な分析、_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:10:49
オリジナル
812 人が閲覧しました

PHP ファイルのダウンロード原理の簡単な分析

1. PHPダウンロードの概略図

2. ファイルダウンロードのソースコード:

コードをコピーします コードは次のとおりです:

$file_name="haha.jpg";//ダウンロードする必要があるファイル
$file_name=iconv("utf-8","gb2312","$file_name");
$fp=fopen($file_name,"r+");//ファイルをダウンロードするには、まずファイルを開いてメモリに書き込む必要があります
if(!file_exists($file_name)){//ファイルが存在するかどうかを判断します
echo "ファイルが存在しません";
exit();
}
$file_size=filesize("a.jpg");//ファイルサイズを決定します
//返されたファイル
Header("Content-type: application/octet-stream");
//バイト形式で返す
Header("Accept-Range: バイト");
//ファイルサイズを返す
Header("Accept-Length: ".$file_size);
// 対応するファイル名を含むクライアント ダイアログ ボックスをポップアップ表示します
Header("Content-Disposition:attachment; filename=".$file_name);
//サーバーの瞬間的な圧力上昇を防ぎ、セグメントを読み取ります
$buffer=1024;
while(!feof($fp)){
$file_data=fread($fp,$buffer);
エコー $file_data;
}
// ファイルを閉じます
fclose($fp);
?>

3. ファイルエンコードの問題の解決策:
ファイル名が中国語の場合、PHP の関数は中国語のファイル名を認識できません。通常、プログラムのエンコーディングが UTF-8 の場合、PHP の関数は比較的古いため、gb2312 でエンコードされた中国語しか認識できません。そのため、iconv("originalcoding" を使用します)。中国語)「変換先のエンコーディング」、「トランスコード対象の文字列」)関数でトランスコードすることができます。

例えば、文字列をutf-8からgb2312に変換します

$file_name=iconv(“utf-8”,”gb2312”,”$file_name”);

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/932484.html技術記事 PHP ファイルのダウンロード原理の簡単な分析、1. PHP ダウンロードの原理図 2. ファイルのダウンロードのソース コード: 次のようにコードをコピーします: php $file_name="haha.jpg";//ダウンロードされるファイル $file_name=iconv(" utf...
関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート