(PHP 4, PHP 5, PHP 7, PHP 8)
file — Legge l'intero file in un array
Legge l'intero file in un array.
Nota:
In alternativa è possibile usare file_get_contents() per estrarre il contenuto di un file sotto forma di stringa.
filenamePercorso del file.
È possibile utilizzare una URL come un nome di file con questa funzione se fopen wrappers è stata abilitata. Vedere fopen() per maggiori informazioni su come specificare i nomi di file. Vedere Supported Protocols and Wrappers per i link verso le informazioni sulle capacità dei vari wrapper, note sul loro uso, informazioni sulle variabili predefinite che forniscono.
flags
Il parametro opzionale flags può essere uno, o
più valori, delle seguenti costanti:
FILE_USE_INCLUDE_PATH
FILE_IGNORE_NEW_LINES
FILE_SKIP_EMPTY_LINES
FILE_NO_DEFAULT_CONTEXT
contextNota: Il supporto per il contesto è stato aggiunto in PHP 5.0.0. Per la descrizione del
contesto, fare riferimento a Stream Funzioni.
Restituisce il file in un array. Ogni elemento dell'array corrisponde a una
riga nel file, con newline incluso. In caso di errore,
file() restituisce false.
Nota:
Per ogni linea riportata nell'array risultante includerà newline, a meno che non venga usato
FILE_IGNORE_NEW_LINES.
Nota: Se PHP non riconosce correttamente i fine riga durante la lettura di file creati o provenienti da un computer Macintosh, l'abilitazione dell'opzione di configurazione runtime auto_detect_line_endings potrebbe aiutare a risolvere il problema.
A partire da PHP 8.3.0, genera un ValueError
se flags include valori non validi, come
FILE_APPEND.
Emette un E_WARNING a livello d'errore
se il file non esiste.
| Versione | Descrizione |
|---|---|
| 8.3.0 |
ValueError viene generato
per qualunque valore di flags non valido.
|
Example #1 Esempio di file()
<?php
// inserisce un file in un array e lo stampa. In questo esempio useremo il protocollo
// HTTP per ottenere il sorgente HTML di un URL
$lines = file('http://www.example.com/');
//Itera attraverso quest'array, mostra il sorgente HTML così com'è e anche i numeri di riga.
foreach ($lines as $line_num => $line) {
echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br />\n";
}
//Utilizzo del parametro flag opzionale
$trimmed = file('somefile.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
?>Quando si usa SSL, Microsoft IIS
viola il protocollo chiudendo la connessione senza inviare
un'indicazione close_notify. PHP indicherà questo con un "SSL: Fatal
Protocol Error" al raggiungimento della fine dei dati. Per aggirare questo problema, occorre
abbassare il livello error_reporting per non
includere questi avvisi.
PHP 4.3.7 e successivi sono in grado di identificare gli IIS bacati quando si apre
lo stream utilizzando il wrapper https:// e disabilitano
automaticamente l'avviso. Se si usa fsockopen() per creare
un socket ssl://, occorre identificare e sopprimere
l'avviso manualmente.