PHP fájl() kezelése és függvényei
Mi az a fájl?
A fájl egyszerűen egy erőforrás az információk számítógépen való tárolására.
A fájlok általában olyan információk tárolására szolgálnak, mint például:
- Egy program konfigurációs beállításai
- Egyszerű adatok, például kapcsolattartók nevei a telefonszámokhoz.
- Képek, képek, fotók stb.
PHP fájlformátumok támogatása
A PHP fájlfunkciók a fájlformátumok széles skáláját támogatják, beleértve:
- Fájl.txt
- File.log
- File.custom_extension azaz fájl.xyz
- Fájl.csv
- Fájl.gif, fájl.jpg stb
- A fájlok állandó költséghatékony adattárolási megoldást kínálnak az egyszerű adatokhoz azokhoz az adatbázisokhoz képest, amelyek más szoftvert és készségeket igényelnek a DBMS-rendszerek kezeléséhez.
- Egyszerű adatokat, például szervernaplókat szeretne tárolni későbbi visszakeresés és elemzés céljából
- Tárolni szeretné a programbeállításokat, pl.: program.ini
PHP file() függvény
A PHP kényelmes módot biztosít a fájlokkal való munkavégzéshez a beépített függvények gazdag gyűjteményével.
Operating rendszerek, mint pl Windows és a MAC OS nem érzékeny a kis- és nagybetűkre Linux or Unix operációs rendszerek megkülönböztetik a kis- és nagybetűket.
Az elnevezési konverzió, például a kisbetűk csak a fájlelnevezéshez való átvétele jó gyakorlat, amely biztosítja a platformok közötti maximális kompatibilitást.
Nézzünk most meg néhányat a leggyakrabban használt PHP fájlfüggvények közül.
PHP file_exists() függvény
Ez a funkció annak meghatározására szolgál, hogy egy fájl létezik-e vagy sem.
- Akkor hasznos, ha tudni akarjuk, hogy egy fájl létezik-e vagy sem, mielőtt feldolgozná.
- Ezt a funkciót akkor is használhatja, amikor új fájlt hoz létre, és meg akarja győződni arról, hogy a fájl még nem létezik a szerveren.
A file_exist függvény szintaxisa a következő.
<?php file_exists($filename); ?>
ITT,
- A „file_exists()” a PHP függvény, amely igazat ad vissza, ha a fájl létezik, és false értéket, ha nem létezik.
- A „$fájl_neve” az ellenőrizendő fájl elérési útja és neve
Az alábbi kód a file_exists függvényt használja annak meghatározására, hogy a my_settings.txt fájl létezik-e.
<?php if (file_exists('my_settings.txt')) { echo 'file found!'; } else { echo 'my_settings.txt does not exist'; } ?>
Mentse el a fenti kódot egy file_function.php nevű fájlba. Feltéve, hogy a fájlt a htdocs phptuts mappájába mentette, nyissa meg az URL-t http://localhost/phptuts/file_function.php böngészőjében A következő eredményeket kapja.
PHP fopen() függvény
Az fopen funkció a fájlok megnyitására szolgál. A következő szintaxissal rendelkezik
<?php fopen($file_name,$mode,$use_include_path,$context); ?>
ITT,
- Az „fopen” a PHP fájl megnyitása funkciója
- A „$file_name” a megnyitandó fájl neve
- A „$mode” az a mód, amelyben a fájlt meg kell nyitni, az alábbi táblázat mutatja a módokat
Mód | Description |
---|---|
r |
• Olvassa el a fájlt az elejétől. • False értéket ad vissza, ha a fájl nem létezik. • Csak olvasható |
r+ |
• Olvassa el a fájlt az elejétől • False értéket ad vissza, ha a fájl nem létezik. • Olvass és írj |
w |
• Írja be a fájlba az elején • a fájl levágása nullára • Ha a fájl nem létezik, próbálja meg létrehozni. • Csak írjon |
w+ |
• Írjon fájlba az elején, csonkolja a fájlt nullára • Ha a fájl nem létezik, próbálja meg létrehozni. • Olvass és írj |
a |
• Hozzáfűzi a fájl végéhez • Ha a fájl nem létezik, próbálja meg létrehozni. • Csak írjon |
a+ |
• Php hozzáfűzi a fájl végéhez • Ha a fájl nem létezik, próbálja meg létrehozni • Olvass és írj |
- A „$use_include_path” opcionális, alapértelmezett értéke false, ha igazra van állítva, a függvény az include elérési útban is keres.
- A „$context” nem kötelező, a kontextus támogatás megadására használható.
PHP fwrite() függvény
Az fwrite funkció fájlok írására szolgál.
A következő szintaxissal rendelkezik
<?php fwrite($handle, $string, $length); ?>
ITT,
- Az „fwrite” a PHP funkciója a fájlok írására
- A „$handle” a fájlmutató erőforrása
- A „$string” a fájlba írandó adat.
- A „$length” opcionális, a maximális fájlhossz megadására használható.
PHP fclose() függvény
Az fclose() függvény a már megnyitott php fájl bezárására szolgál
A következő szintaxissal rendelkezik.
<?php fclose($handle); ?>
ITT,
- „fclose” a PHP függvény megnyitott fájl bezárásához
- A „$handle” a fájlmutató erőforrása.
Nézzünk most egy példát, amely létrehozza a my_settings.txt fájlt.
A következő funkciókat fogjuk használni.
- Fopen
- Fwrite
- fclose
A „create_my_settings_file.php” alatti kód megvalósítja a fenti példát.
Nyissa meg a fájlt |
<?php $fh = fopen("my_settings.txt", 'w') or die("Failed to create file"); ?> |
Fájl bezárása |
<?php fclose($fh); ?> |
Fájl létrehozása |
<?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"; ?> |
A kód tesztelése
Nyissa meg az URL-t http://localhost/phptuts/create_my_settings.php a böngészőben.
A következő oldalt fogod kapni
Megjegyzés: ha a lemez megtelt, vagy nincs engedélye fájlok írására, hibaüzenetet fog kapni.
Váltson vissza az URL-re http://localhost/phptuts/file_function.php .
Milyen eredményeket ér el?
PHP fgets() függvény
Az fgets függvény a php fájlok soronkénti olvasására szolgál. A következő alapvető szintaxissal rendelkezik. fgets($handle); ITT,
- A „$fgets” a fájlsorok olvasására szolgáló PHP függvény
- A „$handle” a fájlmutató erőforrása.
Nézzünk most egy példát, amely beolvassa a my_settings.txt fájlt az fopen és az fgets függvények használatával.
A read_my_settings.php alábbi kód a fenti példát valósítja meg.
<?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); ?>
ITT,
- Az „fopen” függvény visszaadja a mutatót a fájl elérési útjában megadott fájlra
- A „die()” függvény meghívásra kerül, ha hiba történik. Üzenetet jelenít meg, és a parancsfájl végrehajtása létezik
PHP copy() függvény
A PHP másolás funkciója fájlok másolására szolgál. A következő alapvető szintaxissal rendelkezik. copy($fájl,$másolt_fájl); ITT,
- A „$file” a másolandó fájl elérési útját és nevét adja meg.
- A „copied_file” megadta a másolt fájl elérési útját és nevét
Az alábbi kód a megvalósítást szemlélteti
<?php copy('my_settings.txt', 'my_settings_backup.txt') or die("Could not copy file"); echo "File successfully copied to 'my_settings_backup.txt'"; ?>
Fájl törlése
A leválasztás funkció a fájl törlésére szolgál. Az alábbi kód a megvalósítást szemlélteti.
<?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() függvény
A file_get_contents függvény a teljes fájltartalom beolvasására szolgál.
Az alábbi kód a megvalósítást szemlélteti.
A file_get_contents és az fgets közötti különbség az, hogy a file_get_contents a fájl adatait karakterláncként adja vissza, míg az fgets soronként olvassa be a fájlt.
<?php echo "<pre>"; // Enables display of line feeds echo file_get_contents("my_settings.txt"); echo "</pre>"; // Terminates pre tag ?>
Összegzésként
- A fájl az adatok tárolására szolgáló erőforrás
- PHP beépített funkciók gazdag gyűjteménye, amelyek leegyszerűsítik a fájlokkal való munkát.
- A gyakori fájlfunkciók közé tartozik az fopen, fclose, file_get_contents
- Az alábbi táblázat összefoglalja az érintett funkciókat
Funkció | Description |
---|---|
A fájl létezik | Annak meghatározására szolgál, hogy létezik-e fájl vagy sem |
nyisd ki | Fájl megnyitására szolgál. Egy mutatót ad vissza a megnyitott fájlra |
fwrite | Fájlok írására szolgál |
fclose | Zárt fájlok megnyitására szolgál |
fgets | Egy fájl soronkénti olvasására szolgál |
másolat | Meglévő fájl másolására szolgál |
leválasztás | Meglévő fájl törlésére szolgál |
file_get_contents | A fájl tartalmának karakterláncként való visszaadására szolgál |