fread()はhandleが指す ファイルポインタから最高lengthバイト 読み込みます。読み込みは、lengthバイト分 読み込まれたか、EOF(ファイルの終端)に達したか、あるいは (ネットワークストリームの場合)パケットが利用可能になったときの、 いずれか早い方の事象により中止されます。
// ファイルの中身を読んで文字列に格納する |
警告 |
バイナリとテキストファイルの形式が異なるシステム(すなわち Windows)では、fopen()の mode パラメータに'b' を指定してファイルをオープンする必要があります。 |
$filename = "c:\\files\\somepic.gif"; |
注意: ネットワークストリームやパイプから読み込んでいる場合、例えば remote filesや popen()、proc_open()が返すものを 読み込んでいる場合には、パケットが有効になった後に読み込みはストップ します。つまり以下の例のように分割されたデータを結合すべきである ということです。
<?php |
注意: 上の例では繰り返し毎に関数をコールしないのでオーバーヘッドが抑制できるため、 伝統的な while(!feof()) を使うアプローチよりも パフォーマンス的にベターです。
注意: 文字列にファイルを読み込みたいだけならば、file_get_contents() を使うほうが上記の例よりも効率的です。
fwrite(), fopen(), fsockopen(), popen(), fgets(), fgetss(), fscanf(), file(), fpassthru()も参照してください。