sprintf
(string format, mixed [
args
]...);
Returns a string produced according to the formatting string format .
The format string is composed by zero or more directives: ordinary characters (excluding % ) that are copied directly to the result, and conversion specifications , each of which results in fetching its own parameter. This applies to both sprintf() and printf()
Each conversion specification consists of these elements, in order:
An optional padding specifier that says what character will be used for padding the results to the right string size. This may be a space character or a 0 (zero character). The default is to pad with spaces. An alternate padding character can be specified by prefixing it with a single quote ( ' ). See the examples below.
An optional alignment specifier that says if the result should be left-justified or right-justified. The default is right-justified; a - character here will make it left-justified.
An optional number, a width specifier that says how many characters (minimum) this conversion should result in.
An optional precision specifier that says how many decimal digits should be displayed for floating-point numbers. This option has no effect for other types than double. (Another function useful for formatting numbers is number_format() .)
A type specifier that says what type the argument data should be treated as. Possible types:
| % - a literal percent character. No argument is required. |
| b - the argument is treated as an integer, and presented as a binary number. |
| c - the argument is treated as an integer, and presented as the character with that ASCII value. |
| d - the argument is treated as an integer, and presented as a decimal number. |
| f - the argument is treated as a double, and presented as a floating-point number. |
| o - the argument is treated as an integer, and presented as an octal number. |
| s - the argument is treated as and presented as a string. |
| x - the argument is treated as an integer and presented as a hexadecimal number (with lowercase letters). |
| X - the argument is treated as an integer and presented as a hexadecimal number (with uppercase letters). |
See also: printf() , number_format()
|
Example 1. sprintf: zero-padded integers $isodate = sprintf("%04d-%02d-%02d", $year, $month, $day);
|
|
Example 2. sprintf: formatting currency $money1 = 68.75; $money2 = 54.35; $money = $money1 + $money2; // echo $money will output "123.1"; $formatted = sprintf ("%01.2f", $money); // echo $formatted will output "123.10"
|