ホームページ  >  記事  >  バックエンド開発  >  PHPでファイルを強制的にダウンロードするにはどうすればよいですか?

PHPでファイルを強制的にダウンロードするにはどうすればよいですか?

DDD
DDDオリジナル
2024-10-20 19:57:02593ブラウズ

How to Force File Download in PHP?

PHP でファイルを強制的にダウンロードする

PHP でファイルのダウンロード リンクを提供するには、次の手順を使用できます。

  1. ファイル情報の取得:

    <code class="php">$filePath = '/path/to/file/on/disk.jpg';
    
    if(file_exists($filePath)) {
        $fileName = basename($filePath);
        $fileSize = filesize($filePath);
    } else {
        die('The provided file path is not valid.');
    }</code>
  2. 出力ヘッダー:

    <code class="php">header("Cache-Control: private");
    header("Content-Type: application/stream");
    header("Content-Length: ".$fileSize);
    header("Content-Disposition: attachment; filename=".$fileName);</code>
  3. ファイルの出力:

    <code class="php">readfile ($filePath);                   
    exit();</code>

注: これを関数で実装する場合は注意してくださいディレクトリのトラバーサルを防止し、定義された領域へのダウンロードを制限する必要があるため、任意のファイルのダウンロードを許可します。

以上がPHPでファイルを強制的にダウンロードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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