Hàm fprintf
Hàm fprintf định dạng một chuỗi theo mẫu được chỉ định và ghi kết quả vào luồng tệp. Tham số đầu tiên nhận tài nguyên tệp, tham số thứ hai - chuỗi định dạng, và các tham số tiếp theo - các giá trị để thay thế vào mẫu. Nếu truyền null thay vì tài nguyên tệp, hàm sẽ trả về chuỗi thay vì ghi vào luồng.
Trong chuỗi định dạng, các ký tự đặc biệt (các bộ mô tả định dạng) được sử dụng, chúng bắt đầu bằng dấu % và điều khiển việc định dạng đầu ra.
Cú pháp
fprintf(resource $handle, string $format, mixed ...$values): int|false
Các bộ mô tả định dạng
| Bộ mô tả | Mô tả |
|---|---|
%s |
Chuỗi |
%d |
Số nguyên có dấu (thập phân) |
%u |
Số nguyên không dấu (thập phân) |
%f |
Số dấu phẩy động (phụ thuộc vào miền địa phương) |
%F |
Số dấu phẩy động (không phụ thuộc vào miền địa phương) |
%c |
Ký tự theo mã ASCII |
%x |
Số nguyên trong hệ thập lục phân (chữ thường) |
%X |
Số nguyên trong hệ thập lục phân (chữ hoa) |
%o |
Số nguyên trong hệ bát phân |
%b |
Số nguyên trong hệ nhị phân |
%e |
Ký hiệu khoa học (chữ thường) |
%E |
Ký hiệu khoa học (chữ hoa) |
%g |
Dạng viết tắt của %e hoặc %f |
%G |
Dạng viết tắt của %E hoặc %F |
%% |
Dấu phần trăm |
Ví dụ
Ghi chuỗi định dạng vào tệp:
<?php
$file = fopen('output.txt', 'w');
fprintf($file, "Name: %s, Age: %d", "John", 25);
fclose($file);
?>
Nội dung tệp output.txt:
'Name: John, Age: 25'
Ví dụ
Sử dụng các bộ mô tả định dạng khác nhau:
<?php
$res = fopen('php://temp', 'w');
fprintf($res, "Float: %.2f, Hex: %x", 12.3456, 255);
rewind($res);
echo stream_get_contents($res);
fclose($res);
?>
Kết quả thực thi mã:
'Float: 12.35, Hex: ff'
Ví dụ
Trả về chuỗi thay vì ghi vào tệp:
<?php
$result = sprintf("Today is %s", date('Y-m-d'));
echo $result;
?>
Kết quả thực thi mã:
'Today is 2023-11-15'
Xem thêm
-
hàm
sprintf,
hàm này trả về một chuỗi đã định dạng -
hàm
vprintf,
hàm này xuất một chuỗi đã định dạng -
hàm
file_put_contents,
hàm này ghi dữ liệu vào tệp