Hàm vfprintf () trong PHP
Thí dụ
Viết một số văn bản vào tệp văn bản có tên "test.txt":
<?php
$number = 9;
$str = "Beijing";
$file = fopen("test.txt","w");
echo vfprintf($file,"There are %u million bicycles in %s.",array($number,$str));
?>
Đầu ra của đoạn mã trên sẽ là:
40
Văn bản sau sẽ được ghi vào tệp "test.txt":
There are 9 million bicycles in Beijing.
Định nghĩa và Cách sử dụng
Hàm vfprintf () ghi một chuỗi được định dạng vào một luồng đầu ra được chỉ định (ví dụ: tệp hoặc cơ sở dữ liệu).
Không giống như fprintf (), các đối số trong vfprintf (), được đặt trong một mảng. Các phần tử mảng sẽ được chèn vào các dấu phần trăm (%) trong chuỗi chính. Chức năng này hoạt động "từng bước". Ở dấu% đầu tiên, phần tử mảng đầu tiên được chèn, ở dấu% thứ hai, phần tử mảng thứ hai được chèn, v.v.
Lưu ý: Nếu có nhiều dấu% hơn đối số, bạn phải sử dụng trình giữ chỗ. Một trình giữ chỗ được chèn sau dấu% và bao gồm đối số- số và "\ $". Xem ví dụ hai.
Mẹo: Các hàm liên quan: fprintf () , printf () , sprintf () , vprintf () và vsprintf ( ) .
Cú pháp
vfprintf(stream,format,argarray)
Giá trị tham số
Parameter | Description |
---|---|
stream | Required. Specifies where to write/output the string |
format | Required. Specifies the string and how to format the variables in it. Possible format values:
Additional format values. These are placed between the % and the letter (example %.2f):
Note: If multiple additional format values are used, they must be in the same order as above. |
argarray | Required. An array with arguments to be inserted at the % signs in the format string |
Chi tiết kỹ thuật
Giá trị trả lại: | Trả về độ dài của chuỗi đã viết |
---|---|
Phiên bản PHP: | 5+ |
Các ví dụ khác
Thí dụ
Viết một số văn bản vào tệp:
<?php
$num1 = 123;
$num2 = 456;
$file = fopen("test.txt","w");
vfprintf($file,"%f%f",array($num1,$num2));
?>
Văn bản sau sẽ được ghi vào tệp "test.txt":
123.000000456.000000
Thí dụ
Sử dụng trình giữ chỗ:
<?php
$number = 123;
$file = fopen("test.txt","w");
vfprintf($file,"With 2 decimals: %1\$.2f
\nWith no decimals: %1\$u",array($number));
?>
Văn bản sau sẽ được ghi vào tệp "test.txt":
With 2 decimals: 123.00
With no decimals: 123
Thí dụ
Sử dụng printf () để chứng minh tất cả các giá trị định dạng có thể có:
<?php
$num1 = 123456789;
$num2 = -123456789;
$char = 50; // The ASCII Character 50 is 2
// Note: The format value "%%" returns a percent sign
printf("%%b = %b <br>",$num1); // Binary number
printf("%%c = %c <br>",$char); // The ASCII Character
printf("%%d = %d <br>",$num1); // Signed decimal number
printf("%%d = %d <br>",$num2); // Signed decimal number
printf("%%e = %e <br>",$num1); // Scientific notation (lowercase)
printf("%%E = %E <br>",$num1); // Scientific notation (uppercase)
printf("%%u = %u <br>",$num1); // Unsigned decimal number (positive)
printf("%%u = %u <br>",$num2); // Unsigned decimal number (negative)
printf("%%f = %f <br>",$num1); // Floating-point number (local settings aware)
printf("%%F = %F <br>",$num1); // Floating-point number (not local settings aware)
printf("%%g = %g <br>",$num1); // Shorter of %e and %f
printf("%%G = %G <br>",$num1); // Shorter of %E and %f
printf("%%o = %o <br>",$num1); // Octal number
printf("%%s = %s <br>",$num1); // String
printf("%%x = %x <br>",$num1); // Hexadecimal number (lowercase)
printf("%%X = %X <br>",$num1); // Hexadecimal number (uppercase)
printf("%%+d = %+d <br>",$num1); // Sign specifier (positive)
printf("%%+d = %+d <br>",$num2); // Sign specifier (negative)
?>
❮ Tham chiếu chuỗi PHP