Функция file_get_contents
Функцията file_get_contents чете съдържанието на файл и го връща
като низ. В първия параметър се подава пътят към файла, във втория -
флаг за включване на пътя за търсене, в третия - контекст на потока,
в четвъртия - отместване за начало на четенето, в петия - максимална дължина на данните.
Третият параметър е особено полезен, когато трябва да се търсят файлове в стандартни директории, указани в конфигурацията на PHP, а не само по абсолютен път.
Синтаксис
file_get_contents(
string $filename,
bool $use_include_path = false,
?resource $context = null,
int $offset = 0,
?int $maxlen = null
): string|false
Параметри
| Параметър | Описание |
|---|---|
filename |
Път към файл или URL |
use_include_path |
Ако е зададено на true, функцията ще търси файл
в директориите, указани в параметъра include_path
в настройките на PHP във файла php.ini.
По подразбиране false.
|
context |
Ресурс на контекст на поток |
offset |
Отместване за начало на четенето |
maxlen |
Максимална дължина на четените данни |
Пример
Четене на съдържанието на локален файл:
<?php
$res = file_get_contents('data.txt');
echo $res;
?>
Резултат от изпълнението на кода:
'abcde'
Пример
Четене на част от файл с указание на отместване и дължина:
<?php
$res = file_get_contents('data.txt', false, null, 1, 3);
echo $res;
?>
Резултат от изпълнението на кода:
'bcd'
Пример
Четене на съдържанието на уеб страница:
<?php
$res = file_get_contents('https://example.com');
echo substr($res, 0, 50) . '...';
?>
Резултат от изпълнението на кода:
'<!doctype html><html><head><title>Example D...'
Пример
Търсене на файл в include_path:
<?php
$res = file_get_contents('config.ini', true);
echo $res;
?>
Резултат от изпълнението на кода:
'config_data'
Параметър за контекст на потока
Параметърът context позволява предаване на ресурс на контекст на поток,
който може да модифицира поведението на функцията при работа с файлове
или мрежови ресурси.
Ресурс на контекст, създаден от функцията stream_context_create.
Ако не са необходими специални настройки, може да се подаде null.
Възможности на контекста:
- Задаване на HTTP заглавия при заявки
- Настройка на таймаути на връзката
- Указание на прокси сървър
- Работа с SSL/TLS параметри
- Настройка на достъп до файловата система
Пример за работа:
<?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);
?>
Вижте също
-
функцията
file_put_contents,
която записва данни във файл -
функцията
fopen,
която отваря файл -
функцията
file,
която чете файл в масив от низове