Gestione dei file in PHP

F

La gestione dei file è una parte importante di qualsiasi applicazione, sia essa un'applicazione desktop o un'applicazione basata sul web. Poiché stiamo imparando lo sviluppo web utilizzando PHP, in questo tutorial impareremo a gestire i file in PHP.

Come leggere file in PHP?

PHP fornisce il metodo fopen() per aprire e leggere il contenuto dei file.

La funzione Fopen() è un'alternativa alla funzione php readfile() ed è caricata con più funzionalità.

Il file di esempio che utilizzeremo per questo tutorial sui file PHP si chiama my_dictionary.txt. Il suo contenuto è riportato di seguito. Il file contiene alcuni acronimi relativi alla tecnologia seguiti dalle loro forme complete.

ACID = Atomicity, Consistency, Isolation, Durability
ACL = Access Control List
ADC = Analog-to-Digital Converter
ADF = Automatic Document Feeder
ADSL = Asymmetric Digital Subscriber Line
AFP = Apple Filing Protocol
AGP = Accelerated Graphics Port
AIFF = Audio Interchange File Format
AIX = Advanced Interactive Executive
ALU = Arithmetic Logic Unit

funzione di apertura accetta due parametri. Il primo parametro è il nome del file da aprire e il secondo parametro è la modalità in cui il file deve essere aperto come la modalità di lettura o scrittura. Se questa funzione apre correttamente il file, restituisce il suo handle. In caso di errore, è possibile stampare un messaggio come nell'esempio seguente.

<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
echo fread($myfile,filesize("webdictionary.txt"));
fclose($myfile);
?>

Nota: i file possono essere una fonte di perdita di memoria.

Mantieni la concentrazione mentre lavori con i file. I file sono una parte cruciale dello sviluppo. Se non hai abbastanza pratica con i file, potresti finire per modificare, rimuovere o riempire i file di spazzatura.

ModalitàDESCRIZIONE
rApri un file per la sola lettura. Il puntatore del file inizia all'inizio del file
wApri un file per la sola scrittura. Cancella il contenuto del file o crea un nuovo file se non esiste. Il puntatore del file inizia all'inizio del file
aApri un file per la sola scrittura. I dati esistenti nel file vengono conservati. Il puntatore del file inizia alla fine del file. Crea un nuovo file se il file non esiste
xCrea un nuovo file per la sola scrittura. Restituisce FALSE e un errore se il file esiste già
r+Apri un file per la lettura/scrivere. Il puntatore del file inizia all'inizio del file
w+Apri un file per la lettura/scrivere. Cancella il contenuto del file o crea un nuovo file se non esiste. Il puntatore del file inizia all'inizio del file
a+Apri un file per la lettura/scrivere. I dati esistenti nel file vengono conservati. Il puntatore del file inizia alla fine del file. Crea un nuovo file se il file non esiste
x+Crea un nuovo file per la lettura/scrivere. Restituisce FALSE e un errore se il file esiste già
Modalità di apertura del file

Come ottenere la dimensione del file in PHP?

filesize(filename) è la funzione che restituisce la dimensione del file. Accetta il percorso del file insieme al suo nome ed estensione.

Come leggere un file in PHP?

La funzione fread() legge il contenuto di un file aperto. Questa funzione accetta due parametri, il primo parametro è il nome del file da leggere e il secondo parametro è il numero di byte da leggere dal file.

Esempio

fread($myfile,filesize("webdictionary.txt"));

Come chiudere il file aperto in PHP?

La funzione fclose() viene utilizzata per chiudere un file aperto. Molti sviluppatori dimenticano di chiudere i file aperti con conseguente perdita di memoria e altri errori. Questa funzione accetta un parametro, che è il nome del file da chiudere.

Esempio

<?php
$myfile = fopen("webdictionary.txt", "r");
// some code to be executed....
fclose($myfile);
?>

Come leggere una singola riga da un file in PHP?

La funzione fread è descritta nella sezione precedente che legge il file partendo dalla posizione 0 fino alla dimensione specificata. Tuttavia, la funzione fgets() legge una singola riga dal file.

Esempio

<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
echo fgets($myfile);
fclose($myfile);
?>

Come controllare la fine del file in PHP?

feof() restituisce la fine del file. Questa funzione è utile perché può aiutare ad iterare il contenuto del file partendo dagli 0 indici del file, fino alla fine che è appunto la fine del file.

<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
// Output one line until end-of-file
while(!feof($myfile)) {
  echo fgets($myfile) . "<br>";
}
fclose($myfile);
?>

Come leggere il carattere del singolo file dal file?

La funzione fgetc() viene utilizzata per leggere un singolo carattere da un file aperto. Guarda l'esempio qui sotto.

<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
// Output one character until end-of-file
while(!feof($myfile)) {
  echo fgetc($myfile);
}
fclose($myfile);
?>

Ricorda che, chiamando la funzione fgetc, il puntatore del file viene spostato al carattere successivo. Allo stesso modo, chiamando la funzione fgets, il puntatore del file si sposta alla riga successiva.

Come creare un file in PHP?

La funzione fopen viene utilizzata per creare un nuovo file in PHP. Non essere confuso sulla stessa funzione per l'apertura e la creazione di file. Se il file da aprire non esiste, la funzione fopen crea e quindi apre il file in modalità lettura o scrittura.

$myfile = fopen("testfile.txt", "w")

Come scrivere in File in PHP?

funzione fwrite ti permette di scrivere qualcosa nei file. Il primo argomento della funzione è il nome del file da scrivere e il secondo parametro è la mia stringa da scrivere nel file.

<?php
$myfile = fopen("newfile.txt", "w") or die("Unable to open file!");
$txt = "John Doe\n";
fwrite($myfile, $txt);
$txt = "Jane Doe\n";
fwrite($myfile, $txt);
fclose($myfile);
?>

Riferimento completo della gestione dei file in PHP 8 qui.

Aggiungi un commento

Rete di tutor

Impara PHP dalla A alla Z