Manipulare și funcții PHP File().
Ce este un fișier?
Un fișier este pur și simplu o resursă pentru stocarea informațiilor pe un computer.
Fișierele sunt de obicei folosite pentru a stoca informații precum:
- Setările de configurare ale unui program
- Date simple, cum ar fi numele contactelor față de numerele de telefon.
- Imagini, Poze, Fotografii etc.
Suport pentru formate de fișiere PHP
Funcțiile de fișiere PHP acceptă o gamă largă de formate de fișiere care includ:
- Fișier.txt
- Fișier.log
- File.custom_extension adică fișier.xyz
- File.csv
- File.gif, file.jpg etc
- Fișierele oferă o soluție permanentă rentabilă de stocare a datelor pentru date simple în comparație cu bazele de date care necesită alte software și abilități pentru a gestiona sistemele DBMS.
- Doriți să stocați date simple, cum ar fi jurnalele serverului, pentru extragere și analiză ulterioară
- Doriți să stocați setările programului, adică program.ini
Funcția PHP file().
PHP oferă o modalitate convenabilă de a lucra cu fișierele prin colecția sa bogată de funcții încorporate.
Operasisteme de ting precum Windows și MAC OS nu țin cont de majuscule și minuscule Linux or Unix sistemele de operare sunt sensibile la majuscule.
Adoptarea unei conversii de denumire, cum ar fi literele mici, numai pentru denumirea fișierelor este o practică bună care asigură compatibilitatea maximă între platforme.
Să ne uităm acum la unele dintre cele mai frecvent utilizate funcții de fișier PHP.
Funcția PHP file_exists().
Această funcție este folosită pentru a determina dacă un fișier există sau nu.
- Este util atunci când vrem să știm dacă un fișier există sau nu înainte de a-l procesa.
- De asemenea, puteți utiliza această funcție atunci când creați un fișier nou și doriți să vă asigurați că fișierul nu există deja pe server.
Funcția file_exist are următoarea sintaxă.
<?php file_exists($filename); ?>
AICI,
- „file_exists()” este funcția PHP care returnează true dacă fișierul există și false dacă nu există.
- „$file_name” este calea și numele fișierului care trebuie verificat
Codul de mai jos folosește funcția file_exists pentru a determina dacă fișierul my_settings.txt există.
<?php if (file_exists('my_settings.txt')) { echo 'file found!'; } else { echo 'my_settings.txt does not exist'; } ?>
Salvați codul de mai sus într-un fișier numit file_function.php Presupunând că ați salvat fișierul în folderul phptuts din htdocs, deschideți adresa URL http://localhost/phptuts/file_function.php în browserul dvs. Veți obține următoarele rezultate.
Funcția PHP fopen().
Funcția fopen este folosită pentru a deschide fișiere. Are următoarea sintaxă
<?php fopen($file_name,$mode,$use_include_path,$context); ?>
AICI,
- „fopen” este funcția de fișier deschis PHP
- „$file_name” este numele fișierului care urmează să fie deschis
- „$mode” este modul în care fișierul ar trebui să fie deschis, tabelul de mai jos arată modurile
mod | Descriere |
---|---|
r |
• Citiți fișierul de la început. • Returnează false dacă fișierul nu există. • Numai citire |
r+ |
• Citiți fișierul de la început • Returnează false dacă fișierul nu există. • Citeste si scrie |
w |
• Scrieți în fișier la început • trunchiați fișierul la lungimea zero • Dacă fișierul nu există, încercați să-l creați. • Numai scrieți |
w+ |
• Scrieți în fișier la început, trunchiați fișierul la lungimea zero • Dacă fișierul nu există, încercați să-l creați. • Citeste si scrie |
a |
• Adăugați la fișier la sfârșit • Dacă fișierul nu există, încercați să-l creați. • Numai scrieți |
a+ |
• Adăugați PHP la fișier la sfârșit • Dacă fișierul nu există, încercați să-l creați • Citeste si scrie |
- „$use_include_path” este opțional, implicit este false, dacă este setată la true, funcția caută și în calea include.
- „$context” este opțional, poate fi folosit pentru a specifica suportul contextului.
Funcția PHP fwrite().
Funcția fwrite este folosită pentru a scrie fișiere.
Are următoarea sintaxă
<?php fwrite($handle, $string, $length); ?>
AICI,
- „fwrite” este funcția PHP pentru scrierea în fișiere
- „$handle” este resursa indicator de fișier
- „$șir” este datele care trebuie scrise în fișier.
- „$length” este opțional, poate fi folosit pentru a specifica lungimea maximă a fișierului.
Funcția PHP fclose().
Funcția fclose() este folosită pentru a închide un fișier în php care este deja deschis
Are următoarea sintaxă.
<?php fclose($handle); ?>
AICI,
- „fclose” este Funcția PHP pentru închiderea unui fișier deschis
- „$handle” este resursa indicator de fișier.
Să ne uităm acum la un exemplu care creează my_settings.txt.
Vom folosi următoarele funcții.
- Fopen
- Fscrie
- fclose
Codul de mai jos „create_my_settings_file.php” implementează exemplul de mai sus.
Deschideți un fișier |
<?php $fh = fopen("my_settings.txt", 'w') or die("Failed to create file"); ?> |
Închiderea unui fișier |
<?php fclose($fh); ?> |
Creați fișier |
<?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"; ?> |
Testarea codului
Deschideți adresa URL http://localhost/phptuts/create_my_settings.php în browserul dvs.
Veți primi următoarea pagină
Notă: dacă discul este plin sau nu aveți permisiunea de a scrie fișiere, veți primi un mesaj de eroare.
Reveniți la adresa URL http://localhost/phptuts/file_function.php .
Ce rezultate obtii?
Funcția PHP fgets().
Funcția fgets este folosită pentru a citi fișierele php linie cu linie. Are următoarea sintaxă de bază. fgets($handle); AICI,
- „$fgets” este funcția PHP pentru citirea liniilor de fișiere
- „$handle” este resursa indicator de fișier.
Să ne uităm acum la un exemplu care citește fișierul my_settings.txt folosind funcțiile fopen și fgets.
Codul de mai jos read_my_settings.php implementează exemplul de mai sus.
<?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); ?>
AICI,
- Funcția „fopen” returnează indicatorul la fișierul specificat în calea fișierului
- Funcția „die()” este apelată dacă apare o eroare. Afișează un mesaj și există execuția scriptului
Funcția PHP copy().
Funcția de copiere PHP este folosită pentru a copia fișiere. Are următoarea sintaxă de bază. copy($fișier,$fișier_copiat); AICI,
- „$file” specifică calea fișierului și numele fișierului de copiat.
- „copied_file” a specificat calea și numele fișierului copiat
Codul de mai jos ilustrează implementarea
<?php copy('my_settings.txt', 'my_settings_backup.txt') or die("Could not copy file"); echo "File successfully copied to 'my_settings_backup.txt'"; ?>
Ștergerea unui fișier
Funcția de deconectare este utilizată pentru a șterge fișierul. Codul de mai jos ilustrează implementarea.
<?php if (!unlink('my_settings_backup.txt')) { echo "Could not delete file"; } else { echo "File 'my_settings_backup.txt' successfully deleted"; } ?>
Funcția PHP file_get_contents().
Funcția file_get_contents este utilizată pentru a citi întregul conținut al fișierului.
Codul de mai jos ilustrează implementarea.
Diferența dintre file_get_contents și fgets este că file_get_contents returnează datele fișierului ca șir, în timp ce fgets citește fișierul linie cu linie.
<?php echo "<pre>"; // Enables display of line feeds echo file_get_contents("my_settings.txt"); echo "</pre>"; // Terminates pre tag ?>
Rezumat
- Un fișier este o resursă pentru stocarea datelor
- PHP are o colecție bogată de funcții încorporate care simplifică lucrul cu fișierele.
- Funcțiile comune ale fișierelor includ fopen, fclose, file_get_contents
- Tabelul de mai jos prezintă un rezumat al funcțiilor acoperite
Funcţie | Descriere |
---|---|
Fisierul exista | Folosit pentru a determina dacă un fișier există sau nu |
deschis | Folosit pentru a deschide un fișier. Returnează un pointer către fișierul deschis |
fscrie | Folosit pentru a scrie în fișiere |
fclose | Folosit pentru a deschide fișiere închise |
fgets | Folosit pentru a citi un fișier linie cu linie |
copiaţi | Folosit pentru a copia un fișier existent |
deconectez | Folosit pentru a șterge un fișier existent |
file_get_contents | Folosit pentru a returna conținutul unui fișier ca șir |