Функция file_put_contents
Функция file_put_contents маълумотларни файлга ёзади. Биринчи параметр - файл йўли,
иккинчиси - ёзиш учун маълумотлар. Учинчи ихтиёрий параметр ёзиш режимини аниқлайди (қуйидаги жадвални кўринг).
Тўртинчи ихтиёрий параметр stream_context_create функцияси томонидан яратилган оқим контексти манбаини ифодалайди.
Файл ёки тармоқ манбаи билан ишлаш параметрларини созлаш имконини беради.
Синтаксис
file_put_contents(
string $filename,
mixed $data,
int $flags = 0,
?resource $context = null
): int|false
Учинчи параметрнинг қийматлари
| Флаг | Тавсиф |
|---|---|
FILE_USE_INCLUDE_PATH |
Агар ўрнатилган бўлса, функция файлни
PHP созламаларидаги php.ini файлидаги include_path параметрида
кўрсатилган директориялардан излайди.
|
FILE_APPEND |
Маълумотларни файлнинг охирига қайта ёзиш ўрнига қўшиб ёзиш |
LOCK_EX |
Ёзиш давомида файлни эксклюзив блокада қолиш |
Мисол
Келинг, файлга сатр ёзайлик:
<?php
$res = file_put_contents('data.txt', 'abcde');
echo $res;
?>
Кодни ишга тушириш натижаси ёзилган байтлар сонини қайтаради:
5
Мисол
Келинг, маълумотларни файлнинг охирига қўшайлик:
<?php
$res = file_put_contents('data.txt', '12345', FILE_APPEND);
echo $res;
?>
Мисол
Массивни файлга ёзиш:
<?php
$data = ['a', 'b', 'c'];
$res = file_put_contents('array.txt', implode(',', $data));
echo $res;
?>
Мисол
Учинчи параметрда бир нечта
флагларни | белгиси орқали кўрсатиш мумкин.
Мисол учун, файлни блокада эканлиги билан маълумотларни қўшайлик:
<?php
$res = file_put_contents(
'log.txt',
"text",
FILE_APPEND | LOCK_EX
);
echo $res;
?>
Мисол
Контекстдан фойдаланиш:
<?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
);
?>
Шунингдек кўринг
-
функция
file_get_contents,
файлнинг муҳтиносини ўқийди -
функция
fopen,
файлни очийди -
функция
fwrite,
файлга ёзади