Funksjonen file_get_contents

Funksjonen file_get_contents leser innholdet i en fil og returnerer det som en streng. Til den første parameteren sendes filstien, til den andre - flagget for å inkludere søkestien, til den tredje - strømkonteksten, til den fjerde - forskytningen for start av lesing, til den femte - maksimal datalengde.

Den tredje parameteren er spesielt nyttig når man trenger å søke etter filer i standardkataloger spesifisert i PHP-konfigurasjonen, og ikke bare etter absolutt sti.

Syntaks

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

Parametere

Parameter Beskrivelse
filename Sti til fil eller URL
use_include_path Hvis satt til true, vil funksjonen søke etter filen i kataloger spesifisert i include_path-parameteren i PHP-innstillingene i filen php.ini. Standard er false.
context Strømkontekstressurs
offset Forskytning for start av lesing
maxlen Maksimal lengde på data som leses

Eksempel

Leser innholdet i en lokal fil:

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

Resultat av kjøring av kode:

php'abcde'

Eksempel

Leser en del av filen med spesifisering av forskytning og lengde:

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

Resultat av kjøring av kode:

php'bcd'

Eksempel

Leser innholdet på en nettside:

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

Resultat av kjøring av kode:

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

Eksempel

Søker etter fil i include_path:

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

Resultat av kjøring av kode:

php'config_data'

Parameter for strømkontekst

Parameteren context tillater å sende en strømkontekstressurs, som kan modifisere funksjonens oppførsel når den arbeider med filer eller nettverksressurser.

En strømkontekstressurs, opprettet av funksjonen stream_context_create. Hvis ingen spesielle innstillinger kreves, kan man sende null.

Muligheter for kontekst:

Eksempel på arbeid:

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

Se også

  • funksjonen file_put_contents,
    som skriver data til en fil
  • funksjonen fopen,
    som åpner en fil
  • funksjonen file,
    som leser en fil til en strengarray