打印出两位小数 php,PHP如何显示(输出)两位小数(prinrf()函数简说)

PHP如何显示(输出)两位小数(prinrf()函数简说)在很多时候,我们都需要格式化一些数据,比如价格等。那么如何来格式化显示这些数据呐?

一 round()函数 方式:

说明:

float round ( float

$val [, int $precision ] )

返回将

val 根据指定精度

precision

(十进制小数点后数字的数目)进行四舍五入的结果。precision

也可  以是负数或零(默认值)。

eg

echo round(3.6);         // 4

echo round(3.6, 0);      // 4

echo round(1.95583, 2);  // 1.96

$a = 12345678;

echo round($a,-3);//12346000

但是有时候如遇到这样的数字就不行了,12.3,

13.4,

15,6

我们要转为 12.30,  13.40,

15,60,这样的值,就得用另外一种强大的方法了。

二sprintf()[或者printf()函数]函数

此函数源于c

中强的printf()函数。所以是一个强大的格式化工具。

说明:

string sprintf ( string $format [,

mixed $args [, mixed $... ]] )

format包含:

其格式(format)有如下值:

d 有符号10进制整数

i 有符号10进制整数

o 无符号8进制整数

u 无符号10进制整数

x 无符号的16进制数字,并以小写abcdef表示

X 无符号的16进制数字,并以大写ABCDEF表示

F/f 浮点数

E/e 用科学表示格式的浮点数

g

使用%f和%e表示中的总的位数表示最短的来表示浮点数

G 同g格式,但表示为指数

c 单个字符

s 字符串

% 显示百分号本身

格式说明:

%[标志][输出最小宽度][.

精度][长度]转换说明符

方括号里是可选项.

例子1:(%d)

$a = 12;

printf("%03d",$a);//

012(如果这里是printf("%3d",$a),那么输出也是三位,只是在前补的是空格)

以上表示:我要输出三位的整数,但$a只有两位,

那么将在前以补0方式,直到三位。

例子2:(%s)

$a = 'i love';

printf("%10s",$a);

以上表示我要输出10位字符,但是$a只有6位,那么将会在前面补上4位空格

%s的

m.ns形式:m指最小宽度,而n,指显示字符串的时候,显示前n个字符.

$a = 'i love';

printf("%10.3s",$a);//将输出 'i

l'

我仍然输出10位字符,只不过我只要字符中的前三位字符.

例子3: (%f)%f的 %m.nf

形式:m指整个实数,包括整数、小数点和小数共占m个字符的宽度,如果不够宽度,将在左边补空格。而n,指实数输出的时候,显示n位小数.

$a = '12.3';

printf("%10.3f",$a);//将输出  12.300

整个实数以10位输出,但保留三位小数

那么上面的 12.3,

13.4,

15,6就很容易形式成

12.30,

13.40,

15,60。

以上我只是简单写了些,其实还很多的格式。(只不过,这些我认为常用)

另外:sprintf()函数不会主动输出,详细见手册。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值