file_get_contents
  (PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
file_get_contents — Считывает содержимое файла в строку
  
 
  Описание
  
  
  
   Вызов функции file_get_contents()
   наиболее предпочтителен, когда требуется получить
   содержимое файла целиком, поскольку для улучшения производительности
   функция использует технику отображения файла в памяти
   (memory mapping), если операционная система её поддерживает.
  
  Замечание: 
   
    При открытии URI, который содержит спецсимволы наподобие пробела,
    URI-идентификатор кодируют функцией urlencode().
   
  
  
 
  Список параметров
  
   
    
     - filename
- 
      
       Имя читаемого файла.
       
- use_include_path
- 
      Замечание: 
        
        Для поиска файла в списке путей директивы include path
        в параметр перадают константу FILE_USE_INCLUDE_PATH.
        Обратите внимание, в коде со строгой типизацией
        так сделать не получится, потому что
        значение константыFILE_USE_INCLUDE_PATHпринадлежит типу int.
        В строгом режиме лучше установить значениеtrue.
 
 
- context
- 
      
       Корректный ресурс контекста, который возвращает функция
       stream_context_create().
       В параметр передают значение null,
       если специфичный контекст не требуется.
 
- offset
- 
      
       Смещение, с которого начнётся чтение оригинального потока.
       Отрицательное значение смещения отсчитывается с конца потока.
       
       Поиск смещения offsetне поддерживается
       при работе с удалёнными файлами. Попытка поиска смещения на нелокальных
       файлах иногда работает при небольших смещениях, но результат будет
       непредсказуемым, поскольку функция работает на буферизованном потоке.
 
- length
- 
      
       Максимальный размер читаемых данных. По умолчанию чтение
       осуществляется пока не будет достигнут конец файла. Учтите, что
       этот параметр применяется и к потоку с фильтрами.
       
 
 
  Возвращаемые значения
  
   Функция возвращает данные, которые считала, или false, если возникла ошибка.
  
  ВниманиеФункция
возвращает как логическое значение false,
так и нелогическое значение, которое приводится к false.
Прочитайте раздел
«Логический тип»,
чтобы получить дополнительную информацию.
Используйте оператор ===
для проверки значения, которое возвращает функция.
 
  
 
  Ошибки
  
   Функция выдаст ошибку уровня E_WARNING,
   если не найдёт файл filename, для параметра length
   установили значение меньше нуля или поиск по смещению offset в потоке
   завершится неудачно.
  
  
   При вызове функции file_get_contents() на каталоге
   в ОС Windows генерируется ошибка уровня E_WARNING,
   а с PHP 7.4 и в других операционных системах.
  
  
 
 
  Примеры
  
   
    Пример #1 Пример получения и вывода исходного кода домашней страницы сайта
    
<?php
$homepage = file_get_contents('http://www.example.com/');
echo $homepage;
?>
     
    
   
    Пример #2 Поиск файлов в include_path
    
<?php
// Если включили строгую типизацию, то есть объявили (strict_types=1);
$file = file_get_contents('./people.txt', true);
// Иначе
$file = file_get_contents('./people.txt', FILE_USE_INCLUDE_PATH);
?>
     
    
   
    Пример #3 Чтение секции файла
    
<?php
// Читаем 14 символов, начиная с 21 символа
$section = file_get_contents('./people.txt', FALSE, NULL, 20, 14);
var_dump($section);
?>
     
    
 Вывод приведённого примера будет похож на:
string(14) "lle Bjori Ro"
 
    
   
    Пример #4 Работа функции с потоковыми контекстами
    
<?php
// Создаём поток
$opts = [
  'http' => [
    'method' => "GET",
    'header' => "Accept-language: en\r\n" .
                "Cookie: foo=bar",
  ]
];
$context = stream_context_create($opts);
// Открываем файл с установленными HTTP-заголовками
$file = file_get_contents('http://www.example.com/', false, $context);
?>
     
    
  
  
 
  Примечания
  
Замечание: 
 Функция безопасна для обработки данных в двоичной форме.
  ПодсказкаВместо названий файлов функция
принимает URL-адреса, если включили директиву fopen wrappers.
Подробнее об определении названия файла рассказывает описание функции fopen().
Раздел «Протоколы и обёртки» также даёт ссылки на информацию о поддерживаемых обёртках,
содержит замечания по работе с обёртками и приводит список
предопределённых переменных, которые они дают.
 
  ВниманиеПри работе с сервером Microsoft IIS
по SSL-протоколу разработчик сталкивается с тем, что IIS-сервер
нарушает протокол путём закрытия соединения без отправки индикатора close_notify.
PHP выдаст ошибку в виде сообщения «SSL: Fatal Protocol Error» при достижении конца данных.
Чтобы избежать такого поведения, значение директивы error_reporting снижают до уровня,
который не включает предупреждений уровня E_WARNING. PHP умеет обнаруживать ошибочное программное обеспечение IIS-сервера
при открытии потока через обёртку https://, и подавляет предупреждение.
За обнаружение и подавление предупреждения отвечает разработчик, который вызывает функцию
fsockopen(), чтобы создать сокет ssl://.