Instance
Output formatted string:
<?php$number = 9; $str = "Beijing"; vprintf ("There is%u million bicycles in%s.", Array ($number, $str)); >
Definition and usage
The vprintf () function outputs a formatted string.
Unlike printf (), the parameters in vprintf () are in the array. The array elements are inserted into the percent sign (%) symbol in the main string. This function is executed step-by. At the first% symbol, insert the first array element, insert the second array element at the second% symbol, and so on.
Note: If the% symbol is more than the arg parameter, you must use a placeholder. Placeholders are inserted after the% symbol, consisting of numbers and "\$". See Example 2.
Tip: Related functions: sprintf (), printf (), vsprintf (), fprintf (), and vfprintf ()
Grammar
vprintf (Format,argarray)
Parameters |
Describe |
Format |
Necessary. Specifies the string and how to format the variable. Possible format values:
Percent percent-returns a percent semicolon%
%b-Binary number
The character that corresponds to the%C-ASCII value
%d-decimal number with sign (negative, 0, positive)
%e-Using the lowercase scientific notation (e.g. 1.2e+2)
%E-Use uppercase scientific notation (e.g. 1.2E+2)
%u-decimal number with no sign (greater than or equal to 0)
%f-Floating point number (local setting)
%F-Floating point number (non-local setting)
%g-Shorter%e and%f
%G-Shorter%E and%f
%o-Eight binary number
%s-String
%x-16 binary number (lowercase letters)
%x-16 decimal digits (uppercase letters)
The attached format value. Must be placed between% and letter (e.g.%.2f):
+ (precede the number with + or-to define the positive and negative of the number.) By default, only negative numbers are marked, positive numbers are not marked.
' (specifies what to use as a fill, the default is a space.) It must be used with the width of the specified device. For example:% ' x20s (using "X" as the fill))
-(left adjustment variable value)
[0-9] (minimum width of the specified variable value)
. [0-9] (Specify the number of decimal digits or the maximum string length)
Note: If you use more than one of the above format values, they must be used in the order above and cannot be disrupted. |
Argarray |
Necessary. An array with parameters that are inserted into the% symbol in the format string. |
Technical details
return value: |
Returns the length of the string being output. |
PHP version: |
4.1.0+ |
More examples
Example 1
Use the format value%f:
<?PHP$NUM1 = 123; $num 2 = 456;vprintf ("%f%f", Array ($num 1, $num 2));? >
Example 2
Use placeholders:
<?php$number = 123;vprintf ("With 2 decimals:%1$.2f<br>with no decimals:%1$u", Array ($number));? >
Example 3
Use printf () to demonstrate all possible format values:
<?PHP$NUM1 = 123456789; $num 2 = -123456789; $char = 50; The ASCII Character is 2//note:the format value "percent" returns a percent signprintf ("%%b =%b <br>", $num 1); Binary numberprintf ("%%c =%c <br>", $char); The ASCII characterprintf ("%%d =%d <br>", $num 1); Signed decimal numberprintf ("%%d =%d <br>", $num 2); Signed decimal numberprintf ("%%e =%e <br>", $num 1); Scientific notation (lowercase) printf ("%%e =%E <br>", $num 1); Scientific notation (uppercase) printf ("%%u =%u <br>", $num 1); Unsigned decimal number (positive) printf ("%%u =%u <br>", $num 2); Unsigned decimal number (negative) printf ("%%f =%f <br>", $num 1); Floating-point number (Local settings Aware) printf ("%%f =%F <br>", $num 1); Floating-point number (not local settings aware) printf ("%%g =%g <br>", $num 1); Shorter of%e and%fprintf ("%%g =%G <br>", $num 1); Shorter of%E and%fprintf ("%%o =%o <br>", $num 1); OctaL numberprintf ("%%s =%s <br>", $num 1); stringprintf ("%%x =%x <br>", $num 1); Hexadecimal number (lowercase) printf ("%%x =%x <br>", $num 1); Hexadecimal number (uppercase) printf ("%%+d =%+d <br>", $num 1); Sign specifier (positive) printf ("%%+d =%+d <br>", $num 2); Sign specifier (negative)?>
Example 4
A demo of the string specifier:
<?PHP$STR1 = "Hello"; $str 2 = "Hello world!"; vprintf ("[%s]<br>", Array ($str 1)), vprintf ("[%8s]<br>", Array ($str 1)), vprintf ("[%-8s]<br>", Array ($str 1)); vprintf ("[%08s]<br>", Array ($str 1)); vprintf ("[% ' *8s]<br>", Array ($str 1)), vprintf ("[%8.8s]<br>", Array ($str 2));?>