Fonction file_get_contents

La fonction file_get_contents lit le contenu d'un fichier et le retourne sous forme de chaîne de caractères. Le premier paramètre est le chemin du fichier, le deuxième - un drapeau d'activation du chemin de recherche, le troisième - le contexte de flux, le quatrième - le décalage pour le début de lecture, le cinquième - la longueur maximale des données.

Le troisième paramètre est particulièrement utile lorsqu'il faut rechercher des fichiers dans les répertoires standards, spécifiés dans la configuration PHP, et pas seulement par chemin absolu.

Syntaxe

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

Paramètres

Paramètre Description
filename Chemin vers le fichier ou URL
use_include_path S'il est défini à true, la fonction recherchera le fichier dans les répertoires indiqués par le paramètre include_path dans les paramètres PHP du fichier php.ini. Par défaut false.
context Ressource de contexte de flux
offset Décalage pour le début de lecture
maxlen Longueur maximale des données à lire

Exemple

Lecture du contenu d'un fichier local :

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

Résultat de l'exécution du code :

php'abcde'

Exemple

Lecture d'une partie du fichier avec spécification du décalage et de la longueur :

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

Résultat de l'exécution du code :

php'bcd'

Exemple

Lecture du contenu d'une page web :

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

Résultat de l'exécution du code :

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

Exemple

Recherche d'un fichier dans include_path :

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

Résultat de l'exécution du code :

php'config_data'

Paramètre de contexte de flux

Le paramètre context permet de passer une ressource de contexte de flux, qui peut modifier le comportement de la fonction lors du travail avec des fichiers ou des ressources réseau.

Ressource de contexte, créée par la fonction stream_context_create. Si aucune configuration particulière n'est requise, on peut passer null.

Possibilités du contexte :

Exemple de fonctionnement :

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

Voir aussi

  • la fonction file_put_contents,
    qui écrit des données dans un fichier
  • la fonction fopen,
    qui ouvre un fichier
  • la fonction file,
    qui lit un fichier dans un tableau de chaînes