ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用してユーザーにファイルを効率的に送信するにはどうすればよいですか?
ユーザーが PHP スクリプトからファイルを要求した場合、それを効率的に配信することが重要になります。これを効果的に行う方法は次のとおりです。
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 サイトの他の関連記事を参照してください。