PHP: File (lettura/scrittura)
Lettura e scrittura di file in PHP
PHP permette di aprire, leggere, scrivere e chiudere file sul server. Questo è utile per salvare dati persistenti, configurazioni o log.
Introduzione alla gestione dei file
La manipolazione dei file in PHP avviene con funzioni integrate che consentono di aprire un file, leggerne il contenuto, scrivere nuove informazioni e chiuderlo correttamente. È importante gestire anche i permessi dei file sul server.
Apertura e scrittura di un file
Per scrivere un file si utilizza fopen() con la modalità "w" (write). Se il file non esiste viene creato, se esiste viene sovrascritto.
Codice Esempio: scrittura file

<?php
$file = fopen("dati.txt", "w");
fwrite($file, "Ciao, questo è un test.\n");
fwrite($file, "Seconda riga di testo.");
fclose($file);
echo "File scritto con successo.";
?>
<!-- Output nel browser:
File scritto con successo.
-->
<!-- Contenuto del file dati.txt:
Ciao, questo è un test.
Seconda riga di testo.
-->
Lettura di un file
Per leggere un file si utilizza fopen() con la modalità "r" (read). Si possono leggere tutte le righe insieme o una alla volta.
Codice Esempio: lettura file

<?php
$file = fopen("dati.txt", "r");
while (!feof($file)) {
echo fgets($file) . "<br>";
}
fclose($file);
?>
<!-- Output nel browser (con dati.txt creato prima):
Ciao, questo è un test.
Seconda riga di testo.
-->
Lettura rapida con file_get_contents
Una scorciatoia per leggere tutto il contenuto di un file è file_get_contents(), che restituisce l’intero testo come stringa.
Codice Esempio: file_get_contents

<?php
$contenuto = file_get_contents("dati.txt");
echo nl2br($contenuto);
?>
<!-- Output nel browser:
Ciao, questo è un test.
Seconda riga di testo.
-->
Tabella riassuntiva modalità apertura file (PHP)
Modo | Descrizione | Comportamento |
---|---|---|
"r" | Apre per lettura | Errore se il file non esiste |
"r+" | Apre per lettura e scrittura | Errore se il file non esiste |
"w" | Apre per scrittura | Tronca il file o lo crea se non esiste |
"w+" | Apre per lettura e scrittura | Tronca il file o lo crea se non esiste |
"a" | Apre per scrittura (append) | Scrive in fondo; crea se non esiste |
"a+" | Apre per lettura e scrittura (append) | Lettura da inizio, scrive in fondo; crea se non esiste |
"x" | Crea nuovo file per scrittura | Errore se il file esiste già |
"x+" | Crea nuovo file per lettura e scrittura | Errore se il file esiste già |
Considerazioni
La gestione dei file è potente ma richiede attenzione. È necessario controllare permessi, validare i nomi dei file e gestire correttamente apertura e chiusura per evitare errori o perdite di dati.