Funkcija file_put_contents
Funkcija file_put_contents zapiše podatke v datoteko. Prvi parameter je pot do datoteke,
drugi so podatki za zapis. Tretji neobvezni parameter določa način pisanja (glej tabelo spodaj).
Četrti neobvezni parameter je vir konteksta toka, ustvarjen s funkcijo stream_context_create.
Omogoča nastavitev parametrov za delo z datoteko ali omrežnim virom.
Sintaksa
file_put_contents(
string $filename,
mixed $data,
int $flags = 0,
?resource $context = null
): int|false
Vrednosti tretjega parametra
| Zastavica | Opis |
|---|---|
FILE_USE_INCLUDE_PATH |
Če je nastavljena, bo funkcija iskala datoteko
v imenikih, določenih v parametru include_path
v nastavitvah PHP v datoteki php.ini.
|
FILE_APPEND |
Dopisuje podatke na konec datoteke namesto prepisovanja |
LOCK_EX |
Pridobi izključno zaklepo datoteke za čas pisanja |
Primer
Zapišimo niz v datoteko:
<?php
$res = file_put_contents('data.txt', 'abcde');
echo $res;
?>
Rezultat izvajanja kode vrne število zapisanih bajtov:
5
Primer
Dodajmo podatke na konec datoteke:
<?php
$res = file_put_contents('data.txt', '12345', FILE_APPEND);
echo $res;
?>
Primer
Zapis polja v datoteko:
<?php
$data = ['a', 'b', 'c'];
$res = file_put_contents('array.txt', implode(',', $data));
echo $res;
?>
Primer
V tretjem parametru je mogoče navesti več
zastavic, ki jih naštejemo z znakom |.
Kot primer dopišimo podatke z zaklepanjem datoteke:
<?php
$res = file_put_contents(
'log.txt',
"text",
FILE_APPEND | LOCK_EX
);
echo $res;
?>
Primer
Uporaba konteksta:
<?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
);
?>
Glejte tudi
-
funkcijo
file_get_contents,
ki bere vsebino datoteke -
funkcijo
fopen,
ki odpre datoteko -
funkcijo
fwrite,
ki piše v datoteko