Funktsioon file_put_contents
Funktsioon file_put_contents kirjutab andmed faili. Esimene parameeter on faili tee,
teine - kirjutatavad andmed. Kolmas valikuline parameeter määratleb kirjutamise režiimi (vt allolevat tabelit).
Neljas valikuline parameeter on voo konteksti ressurss, mis on loodud funktsiooniga stream_context_create.
Võimaldab konfigureerida faili- või võrguressursiga töötamise parameetreid.
Süntaks
file_put_contents(
string $filename,
mixed $data,
int $flags = 0,
?resource $context = null
): int|false
Kolmanda parameetri väärtused
| Lipp | Kirjeldus |
|---|---|
FILE_USE_INCLUDE_PATH |
Kui seatud, otsib funktsioon faili
PHP seadete failis php.ini parameetris include_path
määratud kataloogidest.
|
FILE_APPEND |
Kirjuta andmed faili lõppu ülekirjutamise asemel |
LOCK_EX |
Hankida faili eksklusiivne lukustus kirjutamise ajaks |
Näide
Kirjutame stringi faili:
<?php
$res = file_put_contents('data.txt', 'abcde');
echo $res;
?>
Koodi täitmise tulemus tagastab kirjutatud baitide arvu:
5
Näide
Lisame andmed faili lõppu:
<?php
$res = file_put_contents('data.txt', '12345', FILE_APPEND);
echo $res;
?>
Näide
Massiivi kirjutamine faili:
<?php
$data = ['a', 'b', 'c'];
$res = file_put_contents('array.txt', implode(',', $data));
echo $res;
?>
Näide
Kolmandas parameetris saab määrata mitu
lippu, loetledes need sümboli | abil.
Näitena kirjutame andmed faili lõppu faili lukustades:
<?php
$res = file_put_contents(
'log.txt',
"text",
FILE_APPEND | LOCK_EX
);
echo $res;
?>
Näide
Konteksti kasutamine:
<?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
);
?>
Vaata ka
-
funktsiooni
file_get_contents,
mis loeb faili sisu -
funktsiooni
fopen,
mis avab faili -
funktsiooni
fwrite,
mis kirjutab faili