sprintf
formats the string.
Syntax: string sprintf(string format, mixed [args]...);
Return value: String
Function type: Data processing
Description
This function is used to format strings. The format parameter is the conversion format, starting with the percent sign % and ending with the conversion character. The converted formats include
1. fill-in-the-blank characters in sequence. If 0, it means that the blanks are filled with 0; the blanks are the default value, which means that the blanks are left alone.
2. Alignment. The default is right-aligned, and the negative sign table is left-aligned.
3. Column width. is the minimum width.
4. Accuracy. Refers to the number of floating point digits after the decimal point.
Type, see the table below
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Convert characters
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
% prints the percent sign without conversion.
b Convert integer to binary.
c Convert integers to corresponding ASCII characters.
d Convert integer to decimal place.
Convert f times precision number to floating point number.
o Convert integers to octal.
s converts an integer into a string.
x integer is converted to lower case hexadecimal.
X Convert integer to uppercase hexadecimal.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- =-=-=-=-=-=-=-=-=-=-=-
Example
=-=-=-=-=-=-=-=-=-=-=-=-=-= -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Usage Example
<?
$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;
// At this time, the value of variable $money is "123.1";
$formatted = sprintf ("%01.2f", $money);
// At this time, the value of variable $ formatted is "123.10"
?>
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- =-=-=-=-=-=-=-=-=-=-=-=-
What does this %01.2f mean?
First of all, the % symbol means the beginning. It is written at the front to indicate that the specified format is about to start. That is, the "start character", until the "conversion character" appears, the format ends.
Then what follows the % sign is 0. This zero is a "fill-in-the-blank character". If the position is empty, fill it with 0.
What follows 0 is 1. This 1 is a stipulation that the number before the decimal point must occupy more than 1 digit.
If you change 1 to 2 and the value of $money is 1.23, the value of $formatted will be 01.23
Because the number before the decimal point only occupies 1 digit, according to the format specified above, the number before the decimal point should occupy 2 digits, but now there is only 1 digit, so fill it with 0s.
So far, the .2 (point 2) after %01 is easy to understand. It means that the number after the decimal point must occupy 2 digits. If at this time, the value of $money is 1.234, then $ The value of formatted will be 1.23.
Why is 4 missing? Because, according to the above regulations, there must and can only be 2 digits after the decimal point. However, in the value of $money, the decimal point occupies 3 digits, so 4 is removed, leaving only 23.
Finally, it ends with f "conversion character". For other conversion characters, please refer to the conversion character list above.
Regarding alignment,
if - (minus sign) is added after the % starting symbol, the numbers will be processed in a right-aligned manner.
Liezi
<?
$money = 1.4;
$formatted = sprintf ("%-02.2f", $money);
echo $formatted;
?>
At this time, $formatted will no longer be 01.40 but 1.400