PHP-fil()-håndtering og funksjoner

Hva er en fil?

En fil er ganske enkelt en ressurs for å lagre informasjon på en datamaskin.

Filer brukes vanligvis til å lagre informasjon som:

  • Konfigurasjonsinnstillinger for et program
  • Enkle data som kontaktnavn mot telefonnumrene.
  • Bilder, bilder, bilder osv.

Støtte for PHP-filformater

PHP-filfunksjoner støtter et bredt spekter av filformater som inkluderer:

  • File.txt
  • File.log
  • File.custom_extension dvs. file.xyz
  • File.csv
  • File.gif, file.jpg osv
  • Filer gir en permanent kostnadseffektiv datalagringsløsning for enkle data sammenlignet med databaser som krever annen programvare og ferdigheter for å administrere DBMS-systemer.
  • Du ønsker å lagre enkle data som serverlogger for senere henting og analyse
  • Du ønsker å lagre programinnstillinger, dvs. program.ini

PHP file() funksjon

PHP gir en praktisk måte å jobbe med filer på via sin rike samling av innebygde funksjoner.

Operatingsystemer som f.eks Windows og MAC OS skiller ikke mellom store og små bokstaver mens Linux or Unix operativsystemer skiller mellom store og små bokstaver.

Å ta i bruk en navnekonvertering, for eksempel små bokstaver, kun for filnavngivning er en god praksis som sikrer maksimal kompatibilitet på tvers av plattformer.

La oss nå se på noen av de mest brukte PHP-filfunksjonene.

PHP file_exists() funksjon

Denne funksjonen brukes til å bestemme om en fil eksisterer eller ikke.

  • Det kommer godt med når vi vil vite om en fil eksisterer eller ikke før vi behandler den.
  • Du kan også bruke denne funksjonen når du oppretter en ny fil og du vil forsikre deg om at filen ikke allerede eksisterer på serveren.

File_exist-funksjonen har følgende syntaks.

<?php
file_exists($filename); 
?>

HER,

  • "file_exists()" er PHP-funksjonen som returnerer true hvis filen eksisterer og falsk hvis den ikke eksisterer.
  • "$filnavn" er banen og navnet på filen som skal sjekkes

Koden nedenfor bruker funksjonen file_exists for å finne ut om filen my_settings.txt eksisterer.

<?php
if (file_exists('my_settings.txt'))
 {    
        echo 'file found!';
 } 
else
 {     
        echo 'my_settings.txt does not exist';
  } 
?>

Lagre koden ovenfor i en fil som heter file_function.php Forutsatt at du har lagret filen i phptuts-mappen i htdocs, åpne URL-en http://localhost/phptuts/file_function.php i nettleseren din vil du få følgende resultater.

PHP file_exists() funksjon

PHP fopen() funksjon

Fopen-funksjonen brukes til å åpne filer. Den har følgende syntaks

<?php
fopen($file_name,$mode,$use_include_path,$context);
 ?>

HER,

  • "fopen" er PHP-funksjonen for åpen fil
  • "$filnavn" er navnet på filen som skal åpnes
  • "$modus" er modusen som filen skal åpnes i, tabellen nedenfor viser modusene
Mote Tekniske beskrivelser
r • Les filen fra begynnelsen.
• Returnerer false hvis filen ikke eksisterer.
• Kun lesetilgang
r+ • Les filen fra begynnelsen
• Returnerer false hvis filen ikke eksisterer.
• Les og skriv
w • Skriv til fil i begynnelsen
• avkorte filen til null lengde
• Hvis filen ikke finnes, forsøk å opprette den.
• Kun skrive
w+ • Skriv til fil i begynnelsen, avkort filen til null lengde
• Hvis filen ikke finnes, forsøk å opprette den.
• Les og skriv
a • Legg til fil på slutten
• Hvis filen ikke finnes, forsøk å opprette den.
• Kun skrive
a+ • Php legge til fil på slutten
• Hvis filen ikke finnes, forsøk å opprette den
• Les og skriv
  • "$use_include_path" er valgfritt, standard er usant, hvis satt til true, søker funksjonen i inkludere banen også.
  • "$context" er valgfritt, kan brukes til å spesifisere kontekststøtten.

PHP fwrite() funksjon

Fwrite-funksjonen brukes til å skrive filer.

Den har følgende syntaks

<?php
fwrite($handle, $string, $length);
?>

HER,

  • "fwrite" er PHP-funksjonen for å skrive til filer
  • "$handle" er filpekerressursen
  • "$string" er dataene som skal skrives i filen.
  • "$length" er valgfritt, kan brukes til å spesifisere maksimal fillengde.

PHP fclose() funksjon

Funksjonen fclose() brukes til å lukke en fil i php som allerede er åpen

Den har følgende syntaks.

<?php
fclose($handle); 
?>

HER,

  • "fclose" er PHP funksjon for å lukke en åpen fil
  • "$handle" er filpekerressursen.

La oss nå se på et eksempel som lager my_settings.txt.

Vi vil bruke følgende funksjoner.

  • Fopen
  • Fwrite
  • flukk

Koden under "create_my_settings_file.php" implementerer eksemplet ovenfor.

Åpne filen
<?php 

$fh = fopen("my_settings.txt", 'w')

or

die("Failed to create file"); ?>
Lukke en fil
<?php

fclose($fh);

?>
Lag fil
<?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"; ?>    

Tester koden

Åpne URL-en http://localhost/phptuts/create_my_settings.php i nettleseren din.

Du får opp følgende side

PHP fclose funksjon

Merk: hvis disken din er full eller du ikke har tillatelse til å skrive filer, får du en feilmelding.

Bytt tilbake til URL-en http://localhost/phptuts/file_function.php .

Hvilke resultater får du?

PHP fgets() funksjon

Fgets-funksjonen brukes til å lese php-filer linje for linje. Den har følgende grunnleggende syntaks. fgets($handle); HER,

  • "$fgets" er PHP-funksjonen for å lese fillinjer
  • "$handle" er filpekerressursen.

La oss nå se på et eksempel som leser my_settings.txt-filen ved å bruke fopen- og fgets-funksjonene.

Koden nedenfor read_my_settings.php implementerer eksemplet ovenfor.

<?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);
 ?>

HER,

  • "fopen"-funksjonen returnerer pekeren til filen spesifisert i filbanen
  • "die()"-funksjonen kalles hvis det oppstår en feil. Den viser en melding og eksisterende kjøring av skriptet

PHP copy() funksjon

PHP-kopieringsfunksjonen brukes til å kopiere filer. Den har følgende grunnleggende syntaks. kopi($fil,$kopiert_fil); HER,

  • "$file" spesifiserer filbanen og navnet på filen som skal kopieres.
  • "copied_file" spesifiserte banen og navnet på den kopierte filen

Koden nedenfor illustrerer implementeringen

<?php
copy('my_settings.txt', 'my_settings_backup.txt') or die("Could not copy file");
echo "File successfully copied to 'my_settings_backup.txt'"; 
?>

Sletter en fil

Unlink-funksjonen brukes til å slette filen. Koden nedenfor illustrerer implementeringen.

<?php
if (!unlink('my_settings_backup.txt'))
{
     echo "Could not delete file";
 }
else
{
     echo "File 'my_settings_backup.txt' successfully deleted"; 
}
 ?>

PHP file_get_contents() funksjon

File_get_contents-funksjonen brukes til å lese hele filinnholdet.

Koden nedenfor illustrerer implementeringen.

Forskjellen mellom file_get_contents og fgets er at file_get_contents returnerer fildataene som en streng mens fgets leser filen linje for linje.

<?php
echo "<pre>"; // Enables display of line feeds
echo file_get_contents("my_settings.txt");
echo "</pre>"; // Terminates pre tag
?>

Sammendrag

  • En fil er en ressurs for lagring av data
  • PHP har en rik samling innebygde funksjoner som forenkler arbeid med filer.
  • Vanlige filfunksjoner inkluderer fopen, fclose, file_get_contents
  • Tabellen nedenfor viser en oppsummering av funksjonene som dekkes
Funksjon Tekniske beskrivelser
Fil_eksisterer Brukes til å avgjøre om en fil eksisterer eller ikke
åpen Brukes til å åpne en fil. Returnerer en peker til den åpnede filen
fskriv Brukes til å skrive til filer
flukk Brukes til å åpne lukkede filer
fgets Brukes til å lese en fil linje for linje
kopiere Brukes til å kopiere en eksisterende fil
frakoble Brukes til å slette en eksisterende fil
file_get_contents Brukes til å returnere innholdet i en fil som en streng

Oppsummer dette innlegget med: