Funktionen file_get_contents
Funktionen file_get_contents läser innehållet i en fil och returnerar det
som en sträng. I den första parametern skickas sökvägen till filen, i den andra -
en flagga för att inkludera sökvägen, i den tredje - strömkontexten,
i den fjärde - offset för början av läsningen, i den femte - maximal datalängd.
Den tredje parametern är särskilt användbar när man behöver söka efter filer i standardkataloger som anges i PHP-konfigurationen, och inte bara med absolut sökväg.
Syntax
file_get_contents(
string $filename,
bool $use_include_path = false,
?resource $context = null,
int $offset = 0,
?int $maxlen = null
): string|false
Parametrar
| Parameter | Beskrivning |
|---|---|
filename |
Sökväg till fil eller URL |
use_include_path |
Om inställt på true kommer funktionen att söka efter filen
i kataloger som anges i parametern include_path
i PHP-inställningarna i filen php.ini.
Standard är false.
|
context |
Resurs för strömkontext |
offset |
Offset för början av läsning |
maxlen |
Maximal längd på data som ska läsas |
Exempel
Läsa innehållet i en lokal fil:
<?php
$res = file_get_contents('data.txt');
echo $res;
?>
Resultat av kodkörning:
'abcde'
Exempel
Läsa en del av en fil med angiven offset och längd:
<?php
$res = file_get_contents('data.txt', false, null, 1, 3);
echo $res;
?>
Resultat av kodkörning:
'bcd'
Exempel
Läsa innehållet på en webbsida:
<?php
$res = file_get_contents('https://example.com');
echo substr($res, 0, 50) . '...';
?>
Resultat av kodkörning:
'<!doctype html><html><head><title>Example D...'
Exempel
Söka efter fil i include_path:
<?php
$res = file_get_contents('config.ini', true);
echo $res;
?>
Resultat av kodkörning:
'config_data'
Parameter för strömkontext
Parametern context låter dig skicka en resurs för strömkontext,
som kan modifiera funktionens beteende när den arbetar med filer
eller nätverksresurser.
Strömkontextresurs, skapad av funktionen stream_context_create.
Om inga särskilda inställningar krävs kan du skicka null.
Möjligheter med kontext:
- Ställa in HTTP-huvuden vid förfrågningar
- Anpassa anslutningstidsgränser
- Ange proxy-server
- Arbeta med SSL/TLS-parametrar
- Anpassa åtkomst till filsystemet
Exempel på arbete:
<?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 även
-
funktionen
file_put_contents,
som skriver data till en fil -
funktionen
fopen,
som öppnar en fil -
funktionen
file,
som läser en fil till en array av strängar