一般的なサーバー側プログラミング言語として、PHP (ハイパーテキスト プリプロセッサ) は、Web リクエストの処理に使用できるだけでなく、ローカルおよびリモートのファイル システムでファイルの読み取りと書き込みも行うことができます。この記事では、ファイルの読み取りと書き込み、ファイルのアップロード、ファイルの削除、ファイル システムの操作など、PHP で最も一般的に使用されるファイル処理関数とテクニックを紹介します。
1. ファイルの読み取りと書き込み
PHP では、次の関数を通じてファイルの読み取りと書き込みを行います:
fopen() 関数はファイルを開くために使用され、ファイル ハンドルを返します。このハンドルは、後続の読み取りおよび書き込み操作に使用されます。この関数は、ファイル名と開くモードの 2 つのパラメータを受け入れます。オープン モードはファイルの操作方法を指定します。たとえば、「r」は読み取り専用、「w」は書き込み専用、「a」は読み取りおよび書き込み可能などを意味します。
例:
$file = fopen("file.txt", "r");
fread() 関数は、開いているファイルから指定されたバイト数を読み取るために使用されます。この関数は、ファイル ハンドルと読み取るバイト数の 2 つのパラメータを受け入れます。読み取った結果は文字列として返されます。
例:
$file = fopen("file.txt", "r"); $content = fread($file, filesize("file.txt")); fclose($file); echo $content;
fwrite() 関数は、指定された文字列をファイルに書き込むために使用されます。この関数は、ファイル ハンドルと書き込まれる文字列の 2 つのパラメータを受け入れます。
例:
$file = fopen("file.txt", "w"); fwrite($file, "Hello World!"); fclose($file);
2. ファイルのアップロード
move_uploaded_file() 関数は、ファイルのアップロードに使用されます。指定したディレクトリに移動します。この関数は、アップロードされたファイルの一時パスとターゲット パスの 2 つのパラメータを受け入れます。
例:
$uploaded_file = $_FILES["file"]["tmp_name"]; $destination = "uploads/" . $_FILES["file"]["name"]; move_uploaded_file($uploaded_file, $destination);
PHP では、$_FILES は、HTTP POST 経由でアップロードされたファイルを処理するために使用される特別な配列です。この配列には、アップロードされたファイルの属性や一時パスなどの情報が含まれます。
例:
3. ファイルの削除
unlink() 関数は、ファイルを削除するために使用されます。指定されたファイル。この関数は、ファイル パスという 1 つのパラメータを受け入れます。
例:
unlink("file.txt");
4. ファイル システム操作
scandir() 関数は、ファイル システムの操作をリストするために使用されます。指定されたディレクトリ内のすべてのファイルとディレクトリの名前。この関数は、ディレクトリ パスという 1 つのパラメータを受け入れます。
例:
$dir = "uploads/"; $files = scandir($dir); foreach($files as $file) { echo $file . "<br>"; }
mkdir() 関数は、新しいディレクトリを作成するために使用されます。この関数は、ディレクトリ パスと権限設定という 2 つのパラメータを受け入れます。
例:
mkdir("new_dir", 0777);
rmdir() 関数は、空のディレクトリを削除するために使用されます。この関数は、ディレクトリ パスという 1 つのパラメータを受け入れます。
例:
rmdir("new_dir");
概要
PHP では、ファイルの読み取り、書き込み、アップロード、削除、およびファイル システムの操作を簡単に行うことができます。これらの基本的なファイル処理スキルを習得すると、サーバー側アプリケーションをより効率的に作成できるようになります。同時に、悪意のあるファイルのアップロードや実行によって引き起こされるセキュリティリスクを回避するために、ファイルシステムのセキュリティにも注意を払う必要があります。
以上がPHP での基本的なファイル処理の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。