Forum und email

file

(PHP 4, PHP 5)

file — Reads entire file into an array

Descrierea

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

Reads an entire file into an array.

Notă: You can use file_get_contents() to return the contents of a file as a string.

Parametri

filename

Path to the file.

Sfat

Puteţi utiliza un URL în calitate de denumire a fişierului în această funcţie dacă învelişurile fopen au fost activate. Accesaţi fopen() pentru mai multe detalii despre modul de specificare a denumirii fişierului şi List of Supported Protocols/Wrappers pentru lista protocoalelor URL susţinute.

flags

The optional parameter flags can be one, or more, of the following constants:

FILE_USE_INCLUDE_PATH
Search for the file in the include_path.
FILE_IGNORE_NEW_LINES
Do not add newline at the end of each array element
FILE_SKIP_EMPTY_LINES
Skip empty lines
FILE_TEXT
The content is returned in UTF-8 encoding. You can specify a different encoding by creating a custom context. This flag cannot be used with FILE_BINARY. This flag is only available since PHP 6.
FILE_BINARY
The content is read as binary data. This is the default setting and cannot be used with FILE_TEXT. This flag is only available since PHP 6.

context

A context resource created with the stream_context_create() function.

Notă: Susţinrea contextelor a fost adăugată începând cu PHP 5.0.0. Pentru o descriere a contextelor, referiţi-vă la Streams.

Valorile întroarse

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.

Notă: Each line in the resulting array will include the line ending, unless FILE_IGNORE_NEW_LINES is used, so you still need to use rtrim() if you do not want the line ending present.

Notă: Dacă aveţi probleme de genul: PHP nu recunoaşte terminaţia liniilor când citeşte fişiere create, sau aflate pe un computer Macintosh, atunci ar trebui să activaţi opţiunea de configurare la rulare auto_detect_line_endings.

Istoria schimbărilor

Versiunea Descriere
6.0.0 Added support for the FILE_TEXT and FILE_BINARY flags.
5.0.0 The context parameter was added
5.0.0 Prior to PHP 5.0.0 the flags parameter only covered include_path and was enabled with 1
4.3.0 file() became binary safe

Exemple

Example#1 file() example

<?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('https://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('https://www.example.com/'));
?>

Note

Avertizare

La utilizarea SSL, Microsoft IIS va viola protocolul prin închiderea conexiunii fără a trimite un indicator close_notify. PHP va raporta aceasta ca "SSL: Fatal Protocol Error" (eroare fatală de protocol) când se ajunge la sfârşitul datelor. Pentru a evita aceasta trebuie să coborâţi nivelul error_reporting pentru a nu include avertizări. PHP 4.3.7 şi versiunile ulterioare pot detecta soft-ul de server IIS care produce astfel de greşeli când deschideţi fluxul utilizând învelişul https:// şi va suprima automat avertizările. Dacă utilizaţi fsockopen() pentru a crea un socket ssl:// sunteţi responsabil singur să detectaţi şi să suprimaţi avertizarea.