現在の位置: ホーム> 最新記事一覧> PHPバックエンドファイルのアップロードとダウンロードに関する完全な実装チュートリアル

PHPバックエンドファイルのアップロードとダウンロードに関する完全な実装チュートリアル

M66 2025-06-11

PHPバックエンドでファイルをアップロードしてダウンロードする方法は?

ファイルのアップロードとダウンロードは、Web開発における非常に一般的で重要な機能です。ユーザーが写真、ドキュメント、またはサーバーからファイルをダウンロードする必要があるかどうかにかかわらず、バックエンドコードが重要な役割を果たします。この記事では、PHPを使用してファイルのアップロードとダウンロードを完了し、参照用の実用的なコード例を提供する方法について詳しく説明します。

1。ファイルアップロード

ファイルアップロードは、ローカルファイルをサーバーに転送するプロセスです。 PHPには、開発者がアップロード機能を実装できるようにするために、豊富な機能と変数が組み込まれています。

1. HTMLアップロードフォームを作成します

まず、フロントエンドにファイルアップロードフォームを作成して、ユーザーがファイルを選択できるようにする必要があります。

 <form action="upload.php" method="post" enctype="multipart/form-data">
  <input type="file" name="file">
  <input type="submit" value="アップロード">
</form>

2。アップロードリクエストを処理するには、upload.phpを書き込みます

upload.phpでは、 $ _files HyperGlobal変数を使用してファイル情報をアップロードし、ファイルを一時ディレクトリから指定された場所に移動します。

 <?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
  $file = $_FILES['file'];
<p>// ファイル名を取得します<br>
$filename = $file['name'];</p>
<p>// 一時的なパスを取得します<br>
$tmp_path = $file['tmp_name'];</p>
<p>// 保存パスを指定します<br>
$save_path = 'uploads/' . $filename;</p>
<p>// ファイルをターゲットディレクトリに移動します<br>
move_uploaded_file($tmp_path, $save_path);</p>
<p>echo '文件アップロード成功!';<br>
}<br>
?><br>

3.ファイルを保存するディレクトリを作成します

ファイルを保存するためのディレクトリがサーバーにあることを確認してください。そうしないと、アップロード操作が失敗します。次のコードでディレクトリを確認して作成できます。

 <?php
if (!file_exists('uploads')) {
  mkdir('uploads', 0777, true);
}
?>

2。ファイルのダウンロード

ファイルのダウンロードとは、サーバー上のファイルをユーザーのローカルエリアに転送することを指します。 PHPは、HTTPヘッダーを設定してファイルを安全にダウンロードできるようにします。

1.ファイルのダウンロードを実装するには、download.phpを書き込みます

download.phpでは、ファイルパスを指定し、ファイルが存在するかどうかを決定し、応答ヘッダーを設定してファイルコンテンツを出力します。

 <?php
$file_path = 'files/document.pdf';
<p>if (file_exists($file_path)) {<br>
header('Content-Description: File Transfer');<br>
header('Content-Type: application/octet-stream');<br>
header('Content-Disposition: attachment; filename=' . basename($file_path));<br>
header('Content-Length: ' . filesize($file_path));<br>
header('Pragma: public');<br>
header('Expires: 0');</p>
<p>readfile($file_path);<br>
exit;<br>
} else {<br>
die('ファイルは存在しません!');<br>
}<br>
?><br>

2。ダウンロード可能なファイルを準備します

指定されたダウンロードファイルがサーバーの対応するディレクトリに存在することを確認してください。そうしないと、ユーザーはそれを正常にダウンロードできません。

3。概要

この記事では、PHPバックエンドのファイルアップロードとダウンロードを実装する重要な手順を体系的に紹介します。 $ _filesを介してファイル情報をアップロードし、 Move_uploaded_fileを使用してファイルを保存し、HTTP応答ヘッダーを設定してファイルのダウンロードを達成します。サンプルコードはシンプルで理解しやすく、初心者が参照して適用するのに適しています。開発者は、実際のニーズに応じて機能をさらに改善し、プロジェクトのユーザーエクスペリエンスを改善できます。