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/'));
?>

Vink: Du kan bruge en URL som filnavn med denne funktion, hvis fopen wrappers er slået til. Se fopen() for flere detaljer omkring hvordan man udformer filnavnet og Appendiks L for en liste over understøttede URL-protokoller.

Bemærk: 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.

Bemærk: Hvis du har problemer med at PHP ikke genkender endelserne på linier når du læser fra filer som er oprettet på en Macintosh computer, er er du muligt du skal aktivere auto_detect_line_endings konfigurations direktivet.

Bemærk: 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.

Bemærk: Kontekst understøttelse blev tilføjet i PHP 5.0.0.

Advarsel

Ved brug af SSL, vil Microsoft IIS overtræde protokollen, ved at lukke forbindelsen uden at sende en close_notify indikator. PHP vil reportere dette som "SSL: Fatal Protocol Error" når du når til slutningen af datastrømmen. For at undgå dette, bør du sænke din error_reporting, til ikke at inkludere advarsler. PHP 4.3.7 og højere kan opdage den fejlagtige IIS server software når du åbner en stream ved hjælp af https:// wrapperen og vil skjule advarslen for dig. Hvis du benytter fsockopen() til at lave et ssl:// socket, er du selv ansvarlig for at opdage og skjule advarslen.

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