テキストファイルを読み込む - PHP5 プログラミング

PROGRAM


テキストファイルを読み込む

PHP5 で、テキストファイルを読み込んでその内容を配列に行ごとに格納するには、つぎのような感じのプログラムを作成します。

// テキストファイルの内容を格納するための配列 $data を用意します。

$data = array();

 

// ファイル $path を読み取り専用で開きます。@ を付けることでファイルが開けなかった場合の警告メッセージは無視します。

$file = @fopen($path, 'rb');

 

if ($file)

{

// ファイルを読み終えるまで繰り返し処理します。

while (!feof($file))

{

// ファイルから 1 行読み取り、それを配列の末尾に追加します。

$data[] = fgets($file);

}

}

else

{

// ファイル $path を読み取れなかった場合の処理です。

 

}

このようにすることで、ファイル $path から読み込んだテキストを、配列 $data に行毎に格納することができました。

この例ではここの fopen 関数でバイナリリード ('rb') をオープンモードとして指定しています。今回はテキストファイルなので単純にリード ('r') を指定してもよさそうにも思いましたけど、互換性を維持するために常に 'b' を付加することが強く推奨されているというようなお話があったので、敢えて 'rb' としてみています。

バイナリモード 'b' ではない方法でファイルを読み書きした場合には、環境に合わせて改行文字が自動的に変換されるそうでした。ちなみに Windows 環境では "\r\n" が、Linux 環境では "\n" が、Macintosh 環境では "\r" が、それぞれ改行を意味する記号になります。


[ もどる ]