{category}

PHP - ファイル読み書き

fread()

エフリード(ファイルとI/O操作

意味 ファイルから読み込む関数


fread()とは?

fread()は、PHPでファイルから指定したバイト数のデータを読み込むための関数です。この関数を使うと、ファイルの内容を部分的に、または全体を読み取ることができます。読み込んだデータは文字列として返されます。

fread()の具体的な使い方

ファイル全体を読み込む例

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

if ($file) {
    $content = fread($file, filesize($filename));
    echo "ファイルの内容:\n" . $content;
    fclose($file);
} else {
    echo "ファイルを開けませんでした。";
}
?>

👇出力結果

ファイルの内容:
これはexample.txtの内容です。
fread()関数のテストに使用しています。

この例では、fread()を使用してファイル全体を一度に読み込んでいます。filesize()関数でファイルのサイズを取得し、そのサイズ分のデータをfread()で読み込みます。

ファイルを小さな塊に分けて読み込む例

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

if ($file) {
    $chunkSize = 4096; // 4KBずつ読み込む
    $content = '';
    
    while (!feof($file)) {
        $chunk = fread($file, $chunkSize);
        $content .= $chunk;
    }
    
    echo "ファイルの内容(最初の100文字):\n" . substr($content, 0, 100);
    echo "\n...(以下省略)";
    
    fclose($file);
} else {
    echo "ファイルを開けませんでした。";
}
?>

👇出力結果

ファイルの内容(最初の100文字):
これはlargefile.txtの内容です。この例では、大きなファイルを小さな塊に分けて読み込む方法を示しています。fread()関数を
...(以下省略)

この例では、大きなファイルを4KBずつ読み込んでいます。while文とfeof()関数を使用して、ファイルの終わりに達するまで繰り返し読み込みます。これにより、メモリ使用量を抑えつつ大きなファイルを処理できます。

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

Q. fread()の主な用途は?
A. fread()の主な用途は、ファイルから指定したバイト数のデータを読み込むことです。ファイル全体または一部を読み取り、その内容を処理したり表示したりするのに使用されます。
Q. fread()の第2引数は何を意味する?
A. fread()の第2引数は、読み込むバイト数を指定します。例えば、fread($file, 100)は、ファイルから100バイトのデータを読み込もうとします。
Q. 大きなファイルをfread()で読む方法は?
A. 大きなファイルを読む場合、メモリ消費を抑えるためにファイルを小さな塊に分けて読み込むことができます。while文とfeof()関数を組み合わせて、ファイルの終わりに達するまで繰り返し読み込むことができます。

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

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

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

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」カテゴリーが追加されましました!


関連するそのほかの単語

rmdir()

ディレクトリを削除する

種類: ディレクトリ操作

glob()

パターンに一致するファイル検索

種類: ディレクトリ操作

filetype()

ファイルの種類を判定

種類: ファイル情報

strpos()

文字列内の位置を検索

種類: 文字列関数

print

画面に文字を表示する関数

種類: PHP言語構造