Hàm file_put_contents
Hàm file_put_contents ghi dữ liệu vào một tệp. Tham số đầu tiên - đường dẫn đến tệp,
tham số thứ hai - dữ liệu cần ghi. Tham số thứ ba không bắt buộc xác định chế độ ghi (xem bảng dưới đây).
Tham số thứ tư không bắt buộc là một resource ngữ cảnh luồng, được tạo bởi hàm stream_context_create.
Cho phép cấu hình các tham số làm việc với tệp hoặc tài nguyên mạng.
Cú pháp
file_put_contents(
string $filename,
mixed $data,
int $flags = 0,
?resource $context = null
): int|false
Giá trị của tham số thứ ba
| Cờ | Mô tả |
|---|---|
FILE_USE_INCLUDE_PATH |
Nếu được thiết lập, hàm sẽ tìm tệp
trong các thư mục được chỉ định trong tham số include_path
trong cài đặt PHP tại tệp php.ini.
|
FILE_APPEND |
Ghi bổ sung dữ liệu vào cuối tệp thay vì ghi đè |
LOCK_EX |
Lấy khóa độc quyền tệp trong suốt thời gian ghi |
Ví dụ
Hãy ghi một chuỗi vào tệp:
<?php
$res = file_put_contents('data.txt', 'abcde');
echo $res;
?>
Kết quả thực thi mã trả về số byte đã ghi:
5
Ví dụ
Hãy thêm dữ liệu vào cuối tệp:
<?php
$res = file_put_contents('data.txt', '12345', FILE_APPEND);
echo $res;
?>
Ví dụ
Ghi mảng vào tệp:
<?php
$data = ['a', 'b', 'c'];
$res = file_put_contents('array.txt', implode(',', $data));
echo $res;
?>
Ví dụ
Trong tham số thứ ba có thể chỉ định nhiều
cờ, liệt kê chúng thông qua ký tự |.
Ví dụ: ghi bổ sung dữ liệu với khóa tệp:
<?php
$res = file_put_contents(
'log.txt',
"text",
FILE_APPEND | LOCK_EX
);
echo $res;
?>
Ví dụ
Sử dụng ngữ cảnh:
<?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
);
?>
Xem thêm
-
hàm
file_get_contents,
hàm đọc nội dung tệp -
hàm
fopen,
hàm mở tệp -
hàm
fwrite,
hàm ghi vào tệp