PHP-bestand()-verwerking en -functies

Wat is een bestand?

Een bestand is eenvoudigweg een hulpmiddel voor het opslaan van informatie op een computer.

Bestanden worden meestal gebruikt om informatie op te slaan, zoals:

  • Configuratie-instellingen van een programma
  • Eenvoudige gegevens zoals contactnamen vergeleken met telefoonnummers.
  • Afbeeldingen, afbeeldingen, foto's, enz.

Ondersteuning voor PHP-bestandsformaten

PHP-bestandsfuncties ondersteunen een breed scala aan bestandsindelingen, waaronder:

  • Bestand.txt
  • Bestand.log
  • Bestand.aangepaste_extensie, dat wil zeggen bestand.xyz
  • Bestand.csv
  • Bestand.gif, bestand.jpg enz
  • Bestanden bieden een permanente, kosteneffectieve oplossing voor gegevensopslag voor eenvoudige gegevens in vergelijking met databases waarvoor andere software en vaardigheden nodig zijn om DBMS-systemen te beheren.
  • U wilt eenvoudige gegevens, zoals serverlogs, opslaan voor later ophalen en analyseren
  • U wilt programma-instellingen opslaan, bijvoorbeeld program.ini

PHP-bestand() Functie

PHP biedt een handige manier om met bestanden te werken via de rijke verzameling ingebouwde functies.

Operasystemen zoals Windows en MAC OS zijn niet hoofdlettergevoelig Linux or Unix besturingssystemen zijn hoofdlettergevoelig.

Het adopteren van een naamconversie, zoals alleen kleine letters voor de bestandsnaamgeving, is een goede gewoonte die maximale platformonafhankelijke compatibiliteit garandeert.

Laten we nu eens kijken naar enkele van de meest gebruikte PHP-bestandsfuncties.

PHP file_exists() Functie

Deze functie wordt gebruikt om te bepalen of een bestand bestaat of niet.

  • Het is handig als we willen weten of een bestand bestaat of niet voordat we het verwerken.
  • U kunt deze functie ook gebruiken wanneer u een nieuw bestand aanmaakt en u er zeker van wilt zijn dat het bestand niet al op de server bestaat.

De functie file_exist heeft de volgende syntaxis.

<?php
file_exists($filename); 
?>

HIER,

  • “file_exists()” is de PHP-functie die true retourneert als het bestand bestaat en false als het niet bestaat.
  • “$file_name” is het pad en de naam van het bestand dat moet worden gecontroleerd

De onderstaande code gebruikt de functie file_exists om te bepalen of het bestand my_settings.txt bestaat.

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

Sla de bovenstaande code op in een bestand met de naam file_function.php Ervan uitgaande dat u het bestand in de map phptuts in htdocs hebt opgeslagen, opent u de URL http://localhost/phptuts/file_function.php in uw browser U krijgt de volgende resultaten.

PHP file_exists() Functie

PHP fopen() Functie

De fopen-functie wordt gebruikt om bestanden te openen. Het heeft de volgende syntaxis

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

HIER,

  • “fopen” is de PHP-openbestandsfunctie
  • “$file_name” is de naam van het bestand dat moet worden geopend
  • “$mode” is de modus waarin het bestand geopend moet worden, onderstaande tabel toont de modi
Mode Beschrijving
r • Bestand vanaf het begin lezen.
• Retourneert false als het bestand niet bestaat.
• Alleen lezen
r+ • Bestand vanaf het begin lezen
• Retourneert false als het bestand niet bestaat.
• Lezen en schrijven
w • Schrijf naar bestand aan het begin
• bestand afkappen tot lengte nul
• Als het bestand niet bestaat, probeer het dan te maken.
• Alleen schrijven
w+ • Schrijf naar het bestand aan het begin, kap het bestand af tot een lengte van nul
• Als het bestand niet bestaat, probeer het dan te maken.
• Lezen en schrijven
a • Aan het einde toevoegen aan bestand
• Als het bestand niet bestaat, probeer het dan te maken.
• Alleen schrijven
a+ • Php toevoegen aan bestand aan het einde
• Als het bestand niet bestaat, probeer het dan te maken
• Lezen en schrijven
  • “$use_include_path” is optioneel, de standaardwaarde is false. Indien ingesteld op true, zoekt de functie ook in het include-pad.
  • “$context” is optioneel en kan worden gebruikt om de contextondersteuning te specificeren.

PHP fwrite() Functie

De fwrite-functie wordt gebruikt om bestanden te schrijven.

Het heeft de volgende syntaxis

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

HIER,

  • “fwrite” is de PHP-functie voor het schrijven naar bestanden
  • “$handle” is de bestandsaanwijzerbron
  • “$string” zijn de gegevens die in het bestand moeten worden geschreven.
  • “$length” is optioneel en kan worden gebruikt om de maximale bestandslengte op te geven.

PHP fclose() Functie

De functie fclose() wordt gebruikt om een ​​bestand in php te sluiten dat al geopend is

De syntaxis is als volgt.

<?php
fclose($handle); 
?>

HIER,

  • "fclose" is de PHP-functie voor het sluiten van een geopend bestand
  • “$handle” is de bestandsaanwijzerbron.

Laten we nu naar een voorbeeld kijken waarin my_settings.txt wordt gemaakt.

We zullen de volgende functies gebruiken.

  • Fopen
  • Fschrijven
  • fsluiten

De onderstaande code “create_my_settings_file.php” implementeert het bovenstaande voorbeeld.

Open het bestand
<?php 

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

or

die("Failed to create file"); ?>
Een bestand sluiten
<?php

fclose($fh);

?>
Maak een bestand
<?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"; ?>    

Het testen van de code

Open de URL http://localhost/phptuts/create_my_settings.php in uw browser.

U krijgt de volgende pagina

PHP fclose-functie

Let op: als uw schijf vol is of u geen toestemming heeft om bestanden te schrijven, krijgt u een foutmelding.

Schakel terug naar de URL http://localhost/phptuts/file_function.php .

Welke resultaten krijg je?

PHP fgets() Functie

De fgets-functie wordt gebruikt om php-bestanden regel voor regel te lezen. Het heeft de volgende basissyntaxis. fgets($handle); HIER,

  • “$fgets” is de PHP-functie voor het lezen van bestandsregels
  • “$handle” is de bestandsaanwijzerbron.

Laten we nu naar een voorbeeld kijken waarin het bestand my_settings.txt wordt gelezen met behulp van de functies fopen en fgets.

De onderstaande code read_my_settings.php implementeert het bovenstaande voorbeeld.

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

HIER,

  • De functie “fopen” retourneert de verwijzing naar het bestand dat is opgegeven in het bestandspad
  • De functie “die()” wordt aangeroepen als er een fout optreedt. Er wordt een bericht weergegeven en de uitvoering van het script bestaat

PHP copy() Functie

De PHP copy-functie wordt gebruikt om bestanden te kopiëren. Het heeft de volgende basissyntaxis. copy($file,$copied_file); HIER,

  • “$file” specificeert het bestandspad en de naam van het bestand dat moet worden gekopieerd.
  • “copied_file” specificeerde het pad en de naam van het gekopieerde bestand

De onderstaande code illustreert de implementatie

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

Een bestand verwijderen

De ontkoppelfunctie wordt gebruikt om het bestand te verwijderen. De onderstaande code illustreert de implementatie.

<?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() Functie

De file_get_contents functie wordt gebruikt om de volledige bestandsinhoud te lezen.

De onderstaande code illustreert de implementatie.

Het verschil tussen file_get_contents en fgets is dat file_get_contents de bestandsgegevens retourneert als een string, terwijl fgets het bestand regel voor regel leest.

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

Samenvatting

  • Een bestand is een bron voor het opslaan van gegevens
  • PHP heeft een rijke verzameling ingebouwde functies die het werken met bestanden vereenvoudigen.
  • Veel voorkomende bestandsfuncties zijn fopen, fclose, file_get_contents
  • Onderstaande tabel geeft een overzicht van de gedekte functies
Functie Beschrijving
Bestand bestaat Wordt gebruikt om te bepalen of een bestand bestaat of niet
open Wordt gebruikt om een ​​bestand te openen. Retourneert een verwijzing naar het geopende bestand
schrijven Wordt gebruikt om naar bestanden te schrijven
fsluiten Wordt gebruikt om gesloten bestanden te openen
fgets Wordt gebruikt om een ​​bestand regel voor regel te lezen
kopiëren Wordt gebruikt om een ​​bestaand bestand te kopiëren
ontkoppelen Wordt gebruikt om een ​​bestaand bestand te verwijderen
file_get_contents Wordt gebruikt om de inhoud van een bestand als een string terug te geven