ホームページ >バックエンド開発 >PHPチュートリアル >PHPでファイルをダウンロードする方法、PHPファイルをダウンロードする正しい方法

PHPでファイルをダウンロードする方法、PHPファイルをダウンロードする正しい方法

WBOY
WBOYオリジナル
2016-07-25 08:51:311985ブラウズ
  1. // フォームが完全に入力されているかどうかを確認します...
  2. if ($form_completed) {
  3. Header("Location: http://www.myweb.com/download/info_check.exe ") ;
  4. 終了;
  5. }
  6. ?>
  7. または:
  8. ファイルのダウンロードを開始
コードをコピー

ここではIDメソッドを使用して、ダウンロードするファイルを指定し、「リダイレクト」メソッドを使用して実際の URL に接続します。

セキュリティ上の理由から、ユーザーは URL を直接コピーしてファイルをダウンロードすることはできません。PHP を使用して実際のファイルを直接読み取ってダウンロードすることをお勧めします。

コード:

  1. $file_name = "info_check.exe";
  2. $file_dir = "/public/www/download/";
  3. if (!file_exists($file_dir . $file_name)) { //チェックファイルが存在するかどうか
  4. echo "ファイルが見つかりません";
  5. exit;
  6. } else {
  7. $file = fopen($file_dir . $file_name,"r") // ファイルを開きます
  8. // ファイルラベルを入力します
  9. ヘッダー(" Content-type: application/octet-stream");
  10. Header("Accept-Ranges: bytes");
  11. Header("Accept-Length: ".filesize($file_dir . $file_name));
  12. Header(" Content- 配置: filename=" . $file_name);
  13. // 出力ファイルの内容
  14. echo fread($file,filesize($file_dir . $file_name));
  15. fclose($file);
  16. exit;}
  17. ? >
コードをコピー

そして、ファイルパスが「http」または「ftp」の URL の場合、ソースコードは次のようになります。

  1. $file_name = "info_check.exe";
  2. $file_dir = "http://www.jincai123.com/";
  3. $file = @ fopen($file_dir . $file_name," r");
  4. if (!$file) {
  5. echo "ファイルが見つかりません";
  6. } else {
  7. Header("Content-type: application/octet-stream");
  8. Header("Content-Disposition:attachment ; filename=" . $file_name);
  9. while (!feof ($file)) {
  10. echo fread($file,50000);
  11. }
  12. fclose ($file);
  13. }
  14. ?>
コードをコピー

上記のコードを使用すると、phpを使用してファイルを直接出力できます。



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