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. Stel dat je het bestand hebt opgeslagen in de map phptuts in htdocs, open het dan. URL http://localhost/phptuts/file_function.php in uw browser U krijgt de volgende resultaten.
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
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 |


