ホームページ > バックエンド開発 > PHPチュートリアル > PHP を使用してユーザーにファイルを効率的に送信するにはどうすればよいですか?

PHP を使用してユーザーにファイルを効率的に送信するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-01 22:55:12
オリジナル
889 人が閲覧しました

How Can I Efficiently Send Files to Users Using PHP?

PHP を使用してユーザーにファイルを送信する

ユーザーが PHP スクリプトからファイルを要求した場合、それを効率的に配信することが重要になります。これを効果的に行う方法は次のとおりです。

readfile() の使用

PHP 関数 readfile() を使用すると、ユーザーにファイルを送信する簡単な方法が提供されます。サーバーからファイルを読み取り、ブラウザに出力します。

構文:

readfile($file);
ログイン後にコピー

例:

$file = 'myfile.pdf';
if (file_exists($file)) {
    readfile($file);
    exit;
}
ログイン後にコピー

ヘッダーの構成

ファイルが確実に配信されるようにするため正しくは、適切な HTTP ヘッダーを構成することが重要です。デフォルトでは、readfile() はブラウザにファイルのダウンロードを促す代わりに、ファイルをインラインとして送信します。

header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ログイン後にコピー

これらのヘッダーは、ファイルの説明、タイプ、性質 (添付ファイルまたはインライン)、転送エンコーディングなどを指定します。ファイルを適切にダウンロードするための重要な情報。

readfile() を適切なヘッダー構成と組み合わせることで、ユーザーの要求に応じて PDF またはその他のファイルを効率的に送信できます。リクエスト。

以上がPHP を使用してユーザーにファイルを効率的に送信するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート