Funkcija file_put_contents
Funkcija file_put_contents ieraksta datus failā. Pirmais parametrs - ceļš uz failu,
otrais - dati ierakstīšanai. Trešais neobligātais parametrs nosaka ierakstīšanas režīmu (skatīt tabulu zemāk).
Ceturtais neobligātais parametrs ir straumes konteksta resurss, ko izveidojusi funkcija stream_context_create.
Ļauj konfigurēt faila vai tīkla resursa darbības parametrus.
Sintakse
file_put_contents(
string $filename,
mixed $data,
int $flags = 0,
?resource $context = null
): int|false
Trešā parametra vērtības
| Karogs | Apraksts |
|---|---|
FILE_USE_INCLUDE_PATH |
Ja iestatīts, funkcija meklēs failu
mapēs, kas norādītas parametrā include_path
PHP iestatījumos failā php.ini.
|
FILE_APPEND |
Pievienot datus faila beigās, nevis pārrakstīt |
LOCK_EX |
Iegūt ekskluzīvu faila bloķēšanu uz ierakstīšanas laiku |
Piemērs
Ierakstīsim virkni failā:
<?php
$res = file_put_contents('data.txt', 'abcde');
echo $res;
?>
Koda izpildes rezultāts atgriež ierakstīto baitu skaitu:
5
Piemērs
Pievienosim datus faila beigās:
<?php
$res = file_put_contents('data.txt', '12345', FILE_APPEND);
echo $res;
?>
Piemērs
Masīva ierakstīšana failā:
<?php
$data = ['a', 'b', 'c'];
$res = file_put_contents('array.txt', implode(',', $data));
echo $res;
?>
Piemērs
Trešajā parametrā var norādīt vairākus
karogus, uzskaitot tos, izmantojot simbolu |.
Piemēram, papildināsim datus ar faila bloķēšanu:
<?php
$res = file_put_contents(
'log.txt',
"text",
FILE_APPEND | LOCK_EX
);
echo $res;
?>
Piemērs
Konteksta izmantošana:
<?php
$opts = [
'http' => [
'method' => "POST",
'header' => "Content-type: text/plain\r\n"
]
];
$context = stream_context_create($opts);
$res = file_put_contents(
'http://example.com/api',
'data=test',
false,
$context
);
?>
Skatiet arī
-
funkciju
file_get_contents,
kas nolasa faila saturu -
funkciju
fopen,
kas atver failu -
funkciju
fwrite,
kas ieraksta failā