Admin Admin
Mesaje : 113 Reputatie : 1 Data de inscriere : 14/07/2011 Varsta : 28 Localizare : Iasi
| Subiect: Lucrul cu fisiere Dum Aug 07, 2011 1:40 pm | |
| Lucrul cu fisiere
Folosind php-ul se pot executa anumite operatii asupra fisierelor aflate pe server cum ar fi: fopen() = deschide fisierul indicat fclose() = inchide fisierul fread() = citeste continutul fisierului fwrite() = scrie in fisier filesize() = indica dimensiunea fisierului Deschiderea fisierelor Sintaxa functiei fopen() este:
fopen(param1, param2); param1 = fisierul, calea catre fisier sau adresa fisierului care va fi deschis param2 = modul in care va fi deschis fisierul, si poate avea valorile:
r = fisier deschis doar pentru citire r+ = fisier deschis doar pentru citire si scriere w = fisier deschis doar pentru scriere w+ = fisier deschis pentru citire si scriere iar daca nu exista fisierul il creza a = fisier deschis pentru adaugare la sfarsit a+ = fisier deschis adaugare la sfarsit iar daca nu exista fisierul il creza t = fisier deschis in mod text b = fisier deschis in mod binar sau combinatii ale acestora.
Citirea fisierelor Sintaxa functiei fread() este:
$filename="proba.txt"; $handle=fopen($filename, "r"); $contents=fread($handle, filesize($filename)); variabila $handle va fi folosita ulterior si in alte functii
Scrierea in fisiere Sintaxa functiei fwrite() este:
fwrite($handle, "continut ce va fi scris in fisier"); Verificarea drepturilor de acces asupra fisierului Sintaxa functiei is_writable este:
is_writable($filename); returneaza TRUE daca se poate si FALSE daca nu se poate scrie in fisier
Inchiderea fisierului Sintaxa functiei fclose() este:
fclose($handle); Folosind aceste functii de baza putem incerca cateva exemple simple.
Exemplu: se verifica dreptul de scriere in fisier. Primul pas este crearea fisierului proba.txt apoi se verifica exemplul care va returna mesajul Acces interzis scrierii in fisier. Se modifica drepturile asupra fisierului conform Q5 din FAQ adaugand scrierea. Se verifica iar exemplul care va returna mesajul Acces permis scrierii in fisier.
<?php $filename="proba.txt"; if(is_writable($filename)) { //se verifica dreptul de scriere in fisier echo "Acces permis scrierii in fisier"; } else { echo "Acces interzis scrierii in fisier"; } ?> Exemplu: adaugam exemplului anterior verificarea deschiderii fisierului.
<?php $filename="proba.txt"; if(is_writable($filename)) { //se verifica dreptul de scriere in fisier if(!$handle=fopen($filename, 'a')) { //se verifica deschiderea fisierului echo "Fisierul <b>".$filename."</b> nu poate fi deschis"; exit; //se incheie executia scriptului } echo "Fisierul <b>".$filename."</b> poate fi deschis"; } else { echo "Acces interzis pentru scriere in fisier"; } ?> Exemplu: adaugam exemplului anterior scrierea in fisier si tiparirea continutului sau
<?php $filename="proba.txt"; if(is_writable($filename)) { //se verifica dreptul de scriere in fisier if(!$handle=fopen($filename, 'a')) { //se verifica deschiderea fisierului echo "Fisierul <b>".$filename."</b> nu poate fi deschis"; exit; //se incheie executia scriptului } if(fwrite($handle, date("j-n-Y g:ia")."\r\n")===FALSE) { //testeaza daca se poate scrie in fisier die ("Nu se poate scrie in ".$filename.""); //iesire } fclose($handle); $matrice=file($filename); //se citeste continutul fisierului si se stocheaza intr-o matrice foreach ($matrice as $cheie =>$valoare) { echo $valoare."<br>"; //printeaza cate o valoare pe un rand } } else { echo "Acces interzis pentru scriere in fisier"; } ?> | |
|