{category}

PHP - ファイル読み書き

fclose()

エフクローズ(ファイルとI/O操作

意味 ファイルを閉じる関数


fclose()とは?

fclose()は、PHPでfopen()によって開かれたファイルを閉じるための関数です。ファイルの操作が終わったら、必ずこの関数を使ってファイルを閉じる必要があります。これにより、システムリソースを適切に解放し、他のプロセスがそのファイルにアクセスできるようになります。

fclose()の具体的な使い方

ファイルを開いて閉じる基本的な例

<?php
$filename = 'example.txt';
$file = fopen($filename, 'r');

if ($file) {
    echo "ファイルを開きました。\n";
    
    // ファイルの操作をここで行います
    
    if (fclose($file)) {
        echo "ファイルを正常に閉じました。";
    } else {
        echo "ファイルを閉じる際にエラーが発生しました。";
    }
} else {
    echo "ファイルを開けませんでした。";
}
?>

👇出力結果

ファイルを開きました。
ファイルを正常に閉じました。

この例では、fopen()でファイルを開き、その後fclose()でファイルを閉じています。fclose()の戻り値をチェックすることで、ファイルが正常に閉じられたかどうかを確認しています。

複数のファイルを扱う例

<?php
$file1 = fopen('file1.txt', 'r');
$file2 = fopen('file2.txt', 'w');

if ($file1 && $file2) {
    // ファイルの操作をここで行います
    
    fclose($file1);
    fclose($file2);
    
    echo "両方のファイルを正常に閉じました。";
} else {
    echo "ファイルを開く際にエラーが発生しました。";
}
?>

👇出力結果

両方のファイルを正常に閉じました。

この例では、2つのファイルを同時に扱っています。一つは読み取りモード、もう一つは書き込みモードで開いています。操作が終わったら、両方のファイルをfclose()で閉じています。

fclose()に関するよくある質問

Q. なぜfclose()を使う必要がある?
A. fclose()を使うことで、開いたファイルのリソースを解放し、システムメモリを効率的に使用できます。また、他のプロセスがそのファイルにアクセスできるようになります。
Q. fclose()を忘れるとどうなる?
A. fclose()を忘れると、ファイルがロックされたままになり、他のプロセスがアクセスできなくなる可能性があります。また、メモリリークの原因となり、長時間実行されるスクリプトでは問題を引き起こす可能性があります。
Q. fclose()の戻り値は何?
A. fclose()は成功した場合にTRUEを、失敗した場合にFALSEを返します。ファイルを正常に閉じられたかどうかを確認するために、この戻り値をチェックすることができます。

fclose()が学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、PHPのfclose()やunlink()、file_get_contents()、file_put_contents()、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


PHPを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!PHPはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

unlink()

ファイルの削除

種類: ファイル操作

file_get_contents()

ファイルの内容を全て読み込む

種類: ファイル読み書き

file_put_contents()

ファイルにデータを書き込む

種類: ファイル読み書き

ファクトリー

オブジェクト生成を代行

種類: デザインパターン

extends Exception

カスタム例外クラスの作成

種類: カスタム例外