Scrivere su file di testo in PHP
Argomento mai affrontato, anche se richiesto: come scrivere su file di testo con PHP.
In verità è abbastanza semplice.
Tutto quello che ci occorre è:
- aprire il file con fopen
- scrivere con fwrite
- chiudere con fclose
Il bello di fopen è che si occuperà lui di creare il file se non esiste.
La cosa importante è il permesso che da al file in apertura.
Qui potete vedere tutti i permessi che supporta la funzione fopen.
Ad esempio in questo caso dovete dargli almeno il permesso in scrittura; nel mio caso specifico userà a+ perchè voglio che il testo venga sempre aggiunto a quello esistente, senza che la parte vecchia venga sovrascritta.
A questo punto, se vogliamo fare le cose OOP, creiamo una classe con dentro la funzione che ci interessa:
<?php
class Utils {
public function scriviTesto($file, $message) {
$f = fopen($file, 'a+');
fwrite($f, $message);
fclose($f);
}
}
Alla funzione passiamo due parametri, il percorso del file da creare e il messaggio.
Per richiamare la funzione:
include_once 'utils.php';
$objUtils = new Utils;
$objUtils->scriviTesto('file.txt', 'MESSAGGIO DI PROVA' . chr(13));
Includiamo il file dove c'è la nostra classe.
Istanziamo un oggetto Utils e richiamiamo la funzione scriviTesto.
Nel secondo parametro ho aggiunto la parte chr(13); in pratica non fa altro che andare a capo.
Il 13 nel codie ASCII corrisponde al tasto invio.
php txt fopen fwrite fclose chr chr(13)
Commentami!