Hàm vprintf() của PHP
Ví dụ
Xuất ra một chuỗi được định dạng:
<?php
$number = 9;
$str = "Beijing";
vprintf("There are %u million bicycles in %s.",array($number,$str));
?>
Hãy tự mình thử »Định nghĩa và cách sử dụng
Hàm vprintf() xuất ra một chuỗi được định dạng.
Không giống như printf(), các đối số trong vprintf() được đặt trong một mảng. Các phần tử mảng sẽ được chèn vào 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 phần giữ chỗ. Một trình giữ chỗ được chèn sau dấu % và bao gồm số đối số và "\$". Xem ví dụ hai.
Mẹo: Các hàm liên quan: sprintf() , printf() , vsprintf() , fprintf() và vfprintf()
Cú pháp
vprintf( format,argarray )
Giá trị tham số
Parameter | Description |
---|---|
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ả về: | Trả về độ dài của chuỗi xuất ra |
---|---|
Phiên bản PHP: | 4.1.0+ |
Thêm ví dụ
Ví dụ
Sử dụng giá trị định dạng %f:
<?php
$num1 = 123;
$num2 = 456;
vprintf("%f%f",array($num1,$num2));
?>
Hãy tự mình thử »Ví dụ
Sử dụng phần giữ chỗ:
<?php
$number = 123;
vprintf("With 2 decimals: %1\$.2f
<br>With no decimals: %1\$u",array($number));
?>
Hãy tự mình thử »Ví dụ
Sử dụng printf() để thể hiện 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)
?>
Hãy tự mình thử »Ví dụ
Một cuộc trình diễn của các công cụ xác định chuỗi:
<?php
$str1 = "Hello";
$str2 = "Hello world!";
vprintf("[%s]<br>",array($str1));
vprintf("[%8s]<br>",array($str1));
vprintf("[%-8s]<br>",array($str1));
vprintf("[%08s]<br>",array($str1));
vprintf("[%'*8s]<br>",array($str1));
vprintf("[%8.8s]<br>",array($str2));
?>
Hãy tự mình thử »❮ Tham chiếu chuỗi PHP