A file_get_contents függvény
A file_get_contents függvény egy fájl tartalmát olvassa be és adja vissza
sztringként. Az első paraméter a fájl elérési útja, a második -
a keresési útvonal használatának jelzője, a harmadik - a streamek kontextusa,
a negyedik - az olvasás kezdő eltolása, az ötödik - az adatok maximális hossza.
A harmadik paraméter különösen hasznos, amikor a fájlokat a PHP konfigurációjában megadott szabványos könyvtárakban kell keresni, nem csak abszolút útvonal alapján.
Szintaxis
file_get_contents(
string $filename,
bool $use_include_path = false,
?resource $context = null,
int $offset = 0,
?int $maxlen = null
): string|false
Paraméterek
| Paraméter | Leírás |
|---|---|
filename |
Fájl elérési útja vagy URL |
use_include_path |
Ha true-ra állítjuk, a függvény a fájlt
a PHP beállításaiban, a php.ini fájlban található include_path paraméterben
megadott könyvtárakban fogja keresni.
Alapértelmezetten false.
|
context |
Streamek kontextus erőforrása |
offset |
Az olvasás kezdő eltolása |
maxlen |
Az olvasandó adatok maximális hossza |
Példa
Helyi fájl tartalmának olvasása:
<?php
$res = file_get_contents('data.txt');
echo $res;
?>
A kód végrehajtásának eredménye:
'abcde'
Példa
Fájl egy részének olvasása eltolás és hossz megadásával:
<?php
$res = file_get_contents('data.txt', false, null, 1, 3);
echo $res;
?>
A kód végrehajtásának eredménye:
'bcd'
Példa
Weboldal tartalmának olvasása:
<?php
$res = file_get_contents('https://example.com');
echo substr($res, 0, 50) . '...';
?>
A kód végrehajtásának eredménye:
'<!doctype html><html><head><title>Example D...'
Példa
Fájl keresése az include_path-ban:
<?php
$res = file_get_contents('config.ini', true);
echo $res;
?>
A kód végrehajtásának eredménye:
'config_data'
A streamek kontextus paramétere
A context paraméter lehetővé teszi egy streamek kontextus erőforrás átadását,
ami módosíthatja a függvény viselkedését fájlokkal
vagy hálózati erőforrásokkal való munka során.
A stream_context_create függvény által létrehozott kontextus erőforrás.
Ha nincs szükség speciális beállításokra, átadható a null.
A kontextus lehetőségei:
- HTTP-fejlécek beállítása kéréseknél
- Kapcsolat időtúllépéseinek beállítása
- Proxy szerver megadása
- SSL/TLS paraméterekkel való munka
- Hozzáférés beállítása a fájlrendszerhez
Működési példa:
<?php
$opts = [
'http' => [
'method' => "GET",
'header' => "Accept-language: en\r\n"
]
];
$context = stream_context_create($opts);
$res = file_get_contents('https://example.com', false, $context);
?>
Lásd még
-
a
file_put_contentsfüggvényt,
ami adatokat ír fájlba -
a
fopenfüggvényt,
ami fájlt nyit meg -
a
filefüggvényt,
ami fájlt olvas be sztringek tömbjébe