Hàm vsprintf
Hàm vsprintf tương tự như sprintf, nhưng nhận đối số dưới dạng mảng,
thay vì một số lượng biến đổi các tham số. Tham số đầu tiên là một chuỗi mẫu với
các chỉ định định dạng, tham số thứ hai - mảng các giá trị để thay thế. Trong chuỗi định dạng sử dụng các ký tự đặc biệt (các chỉ định định dạng), bắt đầu bằng dấu % và điều khiển việc định dạng đầu ra.
Cú pháp
vsprintf(string $format, array $args);
Các chỉ định định dạng
| Chỉ định | 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 ngôn ngữ) |
%F |
Số dấu phẩy động (không phụ thuộc vào ngôn 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 rút gọn của %e hoặc %f |
%G |
Dạng rút gọn của %E hoặc %F |
%% |
Dấu phần trăm |
Ví dụ
Ví dụ cơ bản về định dạng chuỗi với việc thay thế giá trị:
<?php
$res = vsprintf('Hello %s! Today is %s.', ['John', 'Monday']);
echo $res;
?>
Kết quả thực thi mã:
'Hello John! Today is Monday.'
Ví dụ
Sử dụng các chỉ định định dạng khác nhau:
<?php
$res = vsprintf('%04d-%02d-%02d', [2023, 5, 12]);
echo $res;
?>
Kết quả thực thi mã:
'2023-05-12'
Ví dụ
Làm việc với số dấu phẩy động:
<?php
$res = vsprintf('Price: $%.2f', [19.99]);
echo $res;
?>
Kết quả thực thi mã:
'Price: $19.99'