file

(PHP 3, PHP 4 , PHP 5)

file -- ファイル全体を読み込んで配列に格納する

説明

array file ( string filename [, int use_include_path [, resource context]])

readfile()と同じですが、file() はファイルを配列に入れて返すところが異なります。 配列の各要素はファイルの各行に対応します。改行記号はついたままと なります。失敗するとfile()FALSEを返します。

オプションのuse_include_path引数を使用して、 これに"1"を設定することにより、 include_path のファイルの検索も行うこともできます。

<?php
// ファイルの内容を配列に取り込みます。
// この例ではHTTPを通してURL上のHTMLソースを取得します。
$lines = file ('http://www.example.com/');

// 配列をループしてHTMLをHTMLソースとして表示し、行番号もつけます。
foreach ($lines as $line_num => $line) {
    echo
"Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br>\n";
}

// 他の例として、Webページを文字列に取り込みます。file_get_contents()も参照してください。
$html = implode ('', file ('http://www.example.com/'));
?>

ティップ: fopen wrappersが有効の場合、この関数のファイル名として URLを使用することが出来ます。ファイル名の指定方法に関する詳細は fopen()、サポートされるURLプロトコルの種類 については、(例えば)付録Lを参照して下さい。

注意: ending present. 配列に取り込まれた各行は行末文字も含みます。 行末文字を取り除きたい場合にはtrim()を使用する必要があります。

注意: マッキントッシュコンピューター上で作成されたファイルを読み込む際に、 PHPが行末を認識できないという問題が発生した場合、 実行時の設定オプションauto_detect_line_endings を有効にする必要が生じるかもしれません。

注意: PHP4.3.0以降ではファイルの内容を文字列に取り込むために file_get_contents()を使うことができます。

PHP4.3.0でfile()はバイナリセーフになりました。

注意: コンテクストのサポートはPHP 5.0.0で追加されました。

readfile(), fopen(), fsockopen(), popen(), file_get_contents(), include() も参照してください。