file

(PHP 3, PHP 4 , PHP 5)

file -- Reads entire file into an array

Description

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

Identical to readfile(), except that file() returns the file in an array. Each element of the array corresponds to a line in the file, with the newline still attached. Upon failure, file() returns FALSE.

You can use the optional use_include_path parameter and set it to "1", if you want to search for the file in the include_path, too.

<?php
// Get a file into an array.  In this example we'll go through HTTP to get
// the HTML source of a URL.
$lines = file('http://www.example.com/');

// Loop through our array, show HTML source as HTML source; and line numbers too.
foreach ($lines as $line_num => $line) {
    echo
"Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br />\n";
}

// Another example, let's get a web page into a string.  See also file_get_contents().
$html = implode('', file('http://www.example.com/'));
?>

Tipp: URL-t is megadhatsz az állomány név paraméter helyén ha a fopen wrappers szolgáltatás be van kapcsolva. Bővebb információk az fopen() leírásánál olvashatóak arról, milyen módon adhatod meg a fájlneveket, valamint érdemes megtekinteni a L Függelék oldalt a támogatott URL típusok listájának megtekintése gyanánt.

Megjegyzés: Each line in the resulting array will include the line ending, so you still need to use rtrim() if you do not want the line ending present.

Megjegyzés: Ha problémád akadna PHP-ben Machintosh gépen létrehozott szöveges fileokban a sorvégek olvasásával, valószínűleg be kell kapcsolnod az auto_detect_line_endings beállítást.

Megjegyzés: As of PHP 4.3.0 you can use file_get_contents() to return the contents of a file as a string.

In PHP 4.3.0 file() became binary safe.

Megjegyzés: A context támogatása a PHP 5.0.0 változattól felfele érhető el.

Figyelem

SSL titkosított kapcsolat esetén a Microsoft IIS webszerver az SSL protokol helytelen implementálása folytán a kapcsolatot a close_notify jelzése nélkül zárja. A PHP ezt a következő hibaüzenettel honorálja, amikor az adattovábbítás végére ér: "SSL: Fatal Protocol Error". A probléma tüneti kezelésére a error_reporting beállítást lehet lejjebb venni. APHP 4.3.7-es és későbbi változatai képesek felismerni a hibásan működő IIS szerver-szoftvert amikor a https:// adatfolyam-burkolót alkalmazod és elnyeli a fenti hibaüzeneteket. Ha az fsockopen()-t használod ssl:// csatornán keresztül, a hibaüzenetet magad tudod észlelni és elnyomni.

See also readfile(), fopen(), fsockopen(), popen(), file_get_contents(), and include().