Kako bi se podaci spremili u datoteku, postoji posebna funkcija u PHP-u file_put_contents (). Pomoću nje možete podatke zapisivati u datoteku na različite načine. Razmislite o svim primjerima PHP file_put_contents.
Gornja metoda je vrlo jednostavna. Ona ne otkriva sve značajke funkcije i prikladna je samo za demonstriranje njezina rada.
Uostalom, ne zaboravite da ovaj način snimanja može propasti na radnom mjestu. Budući da datoteka može primiti zahtjev za čitanje i pisanje u isto vrijeme. Da biste izbjegli takve incidente, morate skripti dati ekskluzivan pristup datoteci. Da biste to učinili, upotrijebite zastavicu LOCK_EX.
file_put_contents (document.txt, $ info, LOCK_EX);
?>
Sada koristeći LOCK_EX, svi će zahtjevi biti obrađeni.
U gornjim primjerima funkcija file_put_contents () formatira datoteku prije pisanja novih informacija u nju. Također, bez brisanja prethodnih podataka, spremite novu na kraj primjenom zastavice FILE_APPEND.
Ako je zapis uspješan, funkcija vraća vrijednost kao veličinu datoteke u bajtovima, au slučaju neuspjeha, vratit će FALSE. Poznavajući te informacije, možete izvršiti provjeru, kao što je navedeno u gornjem primjeru.
Za pisanje polja u datoteku, možete koristiti istu funkciju, ali prije toga polje mora biti serijski. Drugim riječima, pretvorite ga u tekst. I nakon pisanja, deserialize sve natrag u polje.
$ mass = niz (1,2,3); // Ovo je niz.
$ document = 'document.txt'; // Datoteka.
$ info = serijski ($ mass); // Ovdje se niz serijalizira.
file_put_contents ($ document, $ info); // Zapišite ga u datoteku.
$ info = file_get_contents ($ dokument); // Pročitajte datoteku.
$ mass = unserialize ($ info); // Deserijalizacija podataka datoteke za vraćanje polja u izvorno stanje.
?>
Postoji još jedna mogućnost pisanja podataka preko PHP-a - pomoću funkcija fopen (), fwrite (), fclose (). Oni su slični PHP file_put_contents (), ali omogućuju detaljniji pristup pisanju skripte koja izvodi različite operacije s datotekama.
Kada koristite funkciju, fopen () morate odrediti način rada.
U ovom primjeru funkcija fopen () s načinom "W" (pisanje) može zapisati podatke samo u datoteku. Stoga će njegov sadržaj biti izbrisan. Ako nema datoteke s tim nazivom, skripta će je stvoriti.
$ file = fopen ($ dokument, "w +"); // Otvorite datoteku.
Tada je zapisana datoteka: