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

phpfile_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<?php
  $res = file_get_contents('data.txt');
  echo $res;
?>

A kód végrehajtásának eredménye:

php'abcde'

Példa

Fájl egy részének olvasása eltolás és hossz megadásával:

php<?php
  $res = file_get_contents('data.txt', false, null, 1, 3);
  echo $res;
?>

A kód végrehajtásának eredménye:

php'bcd'

Példa

Weboldal tartalmának olvasása:

php<?php
  $res = file_get_contents('https://example.com');
  echo substr($res, 0, 50) . '...';
?>

A kód végrehajtásának eredménye:

php'<!doctype html><html><head><title>Example D...'

Példa

Fájl keresése az include_path-ban:

php<?php
  $res = file_get_contents('config.ini', true);
  echo $res;
?>

A kód végrehajtásának eredménye:

php'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:

Működési példa:

php<?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_contents függvényt,
    ami adatokat ír fájlba
  • a fopen függvényt,
    ami fájlt nyit meg
  • a file függvényt,
    ami fájlt olvas be sztringek tömbjébe