Funkcija file_get_contents

Funkcija file_get_contents skaito failo turinį ir grąžina jį kaip eilutę. Pirmuoju parametru perduodamas kelias į failą, antruoju - vėliava, įjungianti paieškos kelią, trečiuoju - srauto kontekstas, ketvirtuoju - poslinkis skaitymo pradžiai, penktuoju - didžiausia duomenų ilgis.

Trečiasis parametras ypač naudingas, kai reikia ieškoti failų standartinėse PHP konfigūracijoje nurodytose direktorijose, o ne tik pagal absoliutųjį kelią.

Sintaksė

phpfile_get_contents(
  string $filename,
  bool $use_include_path = false,
  ?resource $context = null,
  int $offset = 0,
  ?int $maxlen = null
): string|false

Parametrai

Parametras Aprašas
filename Kelias į failą arba URL
use_include_path Jei nustatyta į true, funkcija ieškos failo directorijose, nurodytose parametre include_path PHP nustatymuose faile php.ini. Pagal nutylėjimą false.
context Srauto konteksto išteklius
offset Poslinkis skaitymo pradžiai
maxlen Didžiausia skaitomų duomenų ilgis

Pavyzdys

Lokalinio failo turinio skaitymas:

php<?php
  $res = file_get_contents('data.txt');
  echo $res;
?>

Kodo vykdymo rezultatas:

php'abcde'

Pavyzdys

Dalinio failo skaitymas nurodant poslinkį ir ilgį:

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

Kodo vykdymo rezultatas:

php'bcd'

Pavyzdys

Tinklalapio turinio skaitymas:

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

Kodo vykdymo rezultatas:

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

Pavyzdys

Failo paieška include_path:

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

Kodo vykdymo rezultatas:

php'config_data'

Srauto konteksto parametras

Parametras context leidžia perduoti srauto konteksto išteklių, kuris gali modifikuoti funkcijos elgesį dirbant su failais arba tinklo ištekliais.

Srauto konteksto išteklius, sukurtas funkcija stream_context_create. Jei nereikia specialių nustatymų, galima perduoti null.

Konteksto galimybės:

Darbo pavyzdys:

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

Taip pat žiūrėkite

  • funkciją file_put_contents,
    kuri įrašo duomenis į failą
  • funkciją fopen,
    kuri atidaro failą
  • funkciją file,
    kuri skaito failą į eilučių masyvą