コードをコピーします コードは次のとおりです:
function downloadFile($file){
/*Alessio Delmonti によるコーディング*/
header ('Pragma: public') // 必須
header('Expires : 0'); // キャッシュなし
header('Cache-Control: must-revalidate, post-check=0, pre-check=0') ; header('Cache-Control: private',false); header('Content-Type: '.$mime);
header('Content-Disposition:attachment; filename="'.basename($file_name). '"');
header('Content-Transfer-Encoding: binary ');
header('Connection: close');
readfile($file_name); //
exit();
php は、ホットリンクを減らすことができます!ファイルをブラウザーに渡して、ブラウザーにダウンロードさせます
txt タイプを例に挙げます
最新のブラウザーはすでに txt ドキュメント形式を認識できるため、txt ドキュメントへのテキストリンクを作成するだけの場合は、新しいファイルが開かれるだけですクリック後に txt ファイルを表示するウィンドウが表示されるため、クリックしてダウンロードするという目的は達成されません。もちろん、この問題を解決するには、txt ファイルの名前をブラウザが認識しないファイル (rar など) に変更することもできます。この場合、ブラウザは rar タイプのファイルを認識できないため、ユーザーはダウンロードすることしかできません。それ。もう 1 つの方法は、コードを使用してヘッダーを通じてドキュメントの形式を設定し、クリック ダウンロードの目的を達成することです。
PHP コードは次のとおりです:
$filename = '/path/'.$_GET['file'].'.txt'; header("Content -Type: application/force-download"); header("Content-Disposition:attachment; filename=".basename($filename));
簡単な説明:
最初のヘッダー関数は、Content-Type の値を application/force-download に設定します。
2 番目のヘッダー関数は、ダウンロードされるファイルを設定します。ここでの filename はパスを含まないファイル名であることに注意してください。 filename の値は、ダウンロードをクリックした後に表示されるダイアログ ボックス内のファイル名になります。パスがある場合は、表示されるダイアログ ボックス内のファイル名になります。アップは不明です。
最後に、readfile 関数を通じて、ファイル ストリームがブラウザに出力され、txt ファイルのダウンロードが実現されます。
上記は、Adobe Flash Player 9.0 ダウンロードの内容を含む、PHP 強制ダウンロード タイプの実装コードを紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。