現在の位置: ホーム> 最新記事一覧> PHP ファイルの読み書きを詳しく解説: fopen、fread、fwrite などの一般的な関数の使い方をマスターします。

PHP ファイルの読み書きを詳しく解説: fopen、fread、fwrite などの一般的な関数の使い方をマスターします。

M66 2025-10-13

PHPファイルの読み書きチュートリアル

Web 開発では、構成ファイルの読み取り、ログ情報の保存、レポートの生成など、ファイル操作は最も一般的な要件の 1 つです。 PHP は、ファイルの読み取りと書き込みを行うための豊富で使いやすい関数を提供します。この記事では、PHP のファイルの読み書き方法と使用プロセスを包括的に理解します。

ファイルの読み取り

ファイルを読み取る前に、 fopen() 関数を使用してターゲット ファイルを開く必要があります。この関数は、ファイル パスとオープン モードの 2 つのパラメータを受け取ります。

 $file = fopen("test.txt", "r");

上記のコードでは、test.txt という名前のファイルを開き、読み取り専用モード (r) で動作します。

ファイルの内容を読み取る方法

PHP での一般的なファイル読み取り方法には次のようなものがあります。

  • fgets() 関数:ファイルの内容を 1 行ずつ読み取ります。データを 1 行ずつ処理するのに適しています。
 while (!feof($file)) {
    $line = fgets($file);
    echo $line . "<br>";
}
  • fread() 関数:指定された長さに従ってファイルの内容を読み取ります。多くの場合、ファイル全体を一度に読み取るために使用されます。
 $content = fread($file, filesize("test.txt"));
echo $content;

読み取り操作が完了したら、必ず fclose() 関数を使用してファイルを閉じ、システム リソースを解放してください。

 fclose($file);

ファイル書き込み

ファイルの書き込み手順は読み取り手順と似ており、最初にファイルを開く必要があります。 fopen() 関数を使用して、適切なモードを設定するだけです。例えば:

 $file = fopen("test.txt", "w");

ここで使用される「w」モードは、書き込み用にファイルを開くことを意味します。ファイルが存在しない場合は、PHP が自動的に作成します。ファイルが存在する場合、元のコンテンツはクリアされます。

ファイル内容の書き込み方法

fputs() または fwrite() 関数を使用して、データをファイルに書き込むことができます。

  • fputs() 関数を使用します。
 fputs($file, "Hello, World!");
  • fwrite() 関数を使用します。
 fwrite($file, "Hello, World!");

書き込みが終了したら、ファイルも閉じます。

 fclose($file);

完全な例: 読書と書き込みの組み合わせ

次の例は、あるファイルの内容を読み取り、別のファイルに書き込む方法を示しています。

 // オープンソースファイル
$readFile = fopen("source.txt", "r");

// 対象ファイルを開く
$writeFile = fopen("target.txt", "w");

// 一行ずつ読み書きします
while (!feof($readFile)) {
    $line = fgets($readFile);
    fputs($writeFile, $line);
}

// ファイルを閉じる
fclose($readFile);
fclose($writeFile);

要約する

この記事では、ファイルを開く、読み取り、書き込み、閉じるプロセスなど、PHP ファイル操作の中心となるメソッドを紹介します。実際の開発では、ニーズに応じて適切な機能やモードを柔軟に選択できます。これらの基本操作をマスターすると、コードの保守性が向上するだけでなく、より複雑なファイル タスクを処理するための強固な基盤を築くことができます。