Funzione PHP File(): File_exists, Fopen, Fwrite, Fclose, Fgets, copy, unlink
Cos’è un file?
Un file è semplicemente una risorsa per memorizzare informazioni su un computer.
I file sono di solito utilizzati per memorizzare informazioni come;
- Impostazioni di configurazione di un programma
- Dati semplici come i nomi dei contatti con i numeri di telefono.
- Immagini, quadri, foto, ecc.
In questo tutorial, imparerai…
- Supporto formati filePHP
- FunzioniPHP file
- FunzionePHP File_exists
- FunzionePHP Fopen
- FunzionePHP Fwrite
- FunzionePHP Fclose
- PHP Fgets Funzione
- PHP Funzione Copy
- Eliminazione di un file
- PHP Funzione File_get_contents
Supporto dei formati di file PHP
Le funzioni di file PHP supportano una vasta gamma di formati di file che includono;
- File.txt
- File.log
- File.custom_extension cioè file.xyz
- File.csv
- File.gif, file.jpg etc
- I file forniscono una soluzione di archiviazione dati permanente ed economica per dati semplici rispetto ai database che richiedono altri software e competenze per gestire i sistemi DBMS.
- Si desidera memorizzare dati semplici come i log del server per un successivo recupero e analisi
- Si desidera memorizzare le impostazioni del programma cioè program.ini
Funzioni dei file PHP
PHP fornisce un modo conveniente di lavorare con i file attraverso la sua ricca collezione di funzioni integrate.
Sistemi operativi come Windows e MAC OS non sono sensibili alle maiuscole e minuscole, mentre i sistemi operativi Linux o Unix lo sono.
Adottare una conversione di nome come le lettere minuscole solo per i nomi dei file è una buona pratica che assicura la massima compatibilità tra piattaforme.
Vediamo ora alcune delle funzioni di file PHP più comunemente usate.
Funzione PHP File_exists
Questa funzione è usata per determinare se un file esiste o no.
- È utile quando vogliamo sapere se un file esiste o no prima di processarlo.
- Puoi anche usare questa funzione quando crei un nuovo file e vuoi assicurarti che il file non esista già sul server.
La funzione file_exist ha la seguente sintassi.
<?phpfile_exists($filename); ?>
QUI,
- “file_exists()” è la funzione PHP che restituisce true se il file esiste e false se non esiste.
- “$file_name” è il percorso e il nome del file da controllare
Il codice qui sotto usa la funzione file_exists per determinare se il file my_settings.txt esiste.
<?phpif (file_exists('my_settings.txt')) { echo 'file found!'; } else { echo 'my_settings.txt does not exist'; } ?>
Salva il codice di cui sopra in un file chiamato file_function.php Supponendo di aver salvato il file nella cartella phptuts in htdocs, apri l’URL http://localhost/phptuts/file_function.php nel tuo browser Otterrai i seguenti risultati.
Funzione PHP Fopen
La funzione fopen è usata per aprire i file. Ha la seguente sintassi
<?phpfopen($file_name,$mode,$use_include_path,$context); ?>
QUI,
- “fopen” è la funzione PHP open file
- “$file_name” è il nome del file da aprire
- “$mode” è la modalità in cui il file deve essere aperto, la tabella sottostante mostra le modalità
Modalità | Descrizione | |
---|---|---|
r |
|
|
r+ |
|
|
w |
|
|
w+ |
|
|
a |
|
|
a+ |
|
- “$use_include_path” è opzionale, l’impostazione predefinita è false, se impostata su true, la funzione cerca anche nel percorso di inclusione.
- “$context” è opzionale, può essere usato per specificare il supporto al contesto.
Funzione PHP Fwrite
La funzione fwrite è usata per scrivere file.
Ha la seguente sintassi
<?phpfwrite($handle, $string, $length);?>
QUI,
- “fwrite” è la funzione PHP per scrivere su file
- “$handle” è la risorsa puntatore al file
- “$stringa” è il dato da scrivere nel file.
- “$length” è opzionale, può essere usato per specificare la lunghezza massima del file.
Funzione PHP Fclose
Si usa per chiudere un file in php che è già aperto
Ha la seguente sintassi.
<?phpfclose($handle); ?>
QUI,
- “fclose” è la funzione PHP per chiudere un file aperto
- “$handle” è il puntatore del file.
Vediamo ora un esempio che crea my_settings.txt.
Useremo le seguenti funzioni.
- Fopen
- Fwrite
- fclose
Il codice qui sotto “create_my_settings_file.php” implementa l’esempio sopra.
Apri un file |
<?php $fh = fopen("my_settings.txt", 'w')ordie("Failed to create file"); ?> |
Chiudi un file |
<?phpfclose($fh);?> |
Crea file |
<?php $fh = fopen("my_settings.txt", 'w') or die("Failed to create file"); $text = <<<_END localhost;root;pwd1234;my_database _END; fwrite($fh, $text) or die("Could not write to file"); fclose($fh); echo "File 'my_settings.txt' written successfully"; ?> |
Test del codice
Apri l’URL http://localhost/phptuts/create_my_settings.php nel tuo browser.
Otterrete la seguente pagina
Nota: se il tuo disco è pieno o non hai il permesso di scrivere file, riceverai un messaggio di errore.
Passa di nuovo all’URL http://localhost/phptuts/file_function.php .
Quali risultati ottieni?
Funzione PHP Fgets
La funzione fgets è usata per leggere i file php riga per riga. Ha la seguente sintassi di base. fgets($handle); QUI,
- “$fgets” è la funzione PHP per leggere le righe del file
- “$handle” è il puntatore al file.
Vediamo ora un esempio che legge il file my_settings.txt usando le funzioni fopen e fgets.
Il codice sottostante read_my_settings.php implementa l’esempio di cui sopra.
<?php$fh = fopen("my_settings.txt", 'r') or die("File does not exist or you lack permission to open it");$line = fgets($fh);echo $line; fclose($fh); ?>
QUI,
- la funzione “fopen” restituisce il puntatore al file specificato nel percorso del file
- la funzione “die()” viene chiamata se si verifica un errore. Visualizza un messaggio ed esce dall’esecuzione dello script
Funzione PHP Copy
La funzione PHP copy è usata per copiare i file. Ha la seguente sintassi di base. copy($file,$copied_file); QUI,
- “$file” specifica il percorso e il nome del file da copiare.
- “copied_file” specifica il percorso e il nome del file copiato
Il codice sottostante illustra l’implementazione
<?phpcopy('my_settings.txt', 'my_settings_backup.txt') or die("Could not copy file");echo "File successfully copied to 'my_settings_backup.txt'"; ?>
Cancellare un file
La funzione unlink è usata per cancellare il file. Il codice qui sotto illustra l’implementazione.
<?phpif (!unlink('my_settings_backup.txt')){ echo "Could not delete file"; }else{ echo "File 'my_settings_backup.txt' successfully deleted"; } ?>
Funzione PHP File_get_contents
La funzione file_get_contents è usata per leggere l’intero contenuto del file.
Il codice qui sotto illustra l’implementazione.
La differenza tra file_get_contents e fgets è che file_get_contents restituisce i dati del file come una stringa mentre fgets legge il file riga per riga.
<?phpecho "<pre>"; // Enables display of line feedsecho file_get_contents("my_settings.txt");echo "</pre>"; // Terminates pre tag?>
Riassunto
- Un file è una risorsa per memorizzare dati
- PHP ha una ricca collezione di funzioni integrate che semplificano il lavoro con i file.
- Le funzioni comuni per i file includono fopen, fclose, file_get_contents
- La tabella sottostante mostra un riassunto delle funzioni trattate
Funzione | Descrizione |
---|---|
File_exists | Usato per determinare se un file esiste o meno |
fopen | Usato per aprire un file. Restituisce un puntatore al file aperto |
fwrite | Usato per scrivere su file |
fclose | Usato per aprire i file chiusi |
fgets | Usato per leggere un file riga per riga |
copy | Usato per copiare un file esistente |
unlink | Usato per cancellare un file esistente |
file_get_contents | Usato per restituire il contenuto di un file come stringa |