php中sprintf与printf函数用法区别解析

这篇文章主要介绍了php中sprintf与printf函数用法区别解析,需要的朋友可以参考下,下面是一个示例:四舍五入保留小数点后两位,代码如下:

  1. <?php
  2. $num1 = 21;
  3. echo sprintf("%0.2f",$num1)."<br />"; //输出 21.00
  4. $num2 = 16.3287;
  5. echo sprintf("%0.2f",$num2)."<br />"; //输出 16.33
  6. $num3 = 32.12329;
  7. echo sprintf("%0.2f",$num3)."<br />"; //输出 32.12
  8. ?>

解释下 %0.2f 的含义:

% 表示起始字符

0 表示空位用0填满

2 表示小数点后必须占两位

f 表示转换成浮点数

转换字符

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

% 印出百分比符号,不转换。

b 整数转成二进位。

c 整数转成对应的 ASCII 字元。

d 整数转成十进位。

f 倍精确度数字转成浮点数。

o 整数转成八进位。

s 整数转成字串。

x 整数转成小写十六进位。

X 整数转成大写十六进位。

printf与sprintf的区别

1. printf函数:

int printf ( string format [, mixed args [, mixed ...]] )

Produces output according to format , which is described in the documentation for sprintf() .

Returns the length of the outputted string.

把文字格式化以后输出,如:

  1. $name="hunte";
  2. $age=25;
  3. printf("my name is %s, age %d", $name, $age);

2. sprintf函数:

string sprintf ( string format [, mixed args [, mixed ...]] )

Returns a string produced according to the formatting string format .

跟printf相似,但不打印,而是返回格式化后的文字,其他的与printf一样。

3. print函数:

是函数,可以返回一个值,只能有一个参数。

int print ( string arg )

Outputs arg . Returns 1 , always.