PHP语言之php中的sprintf的应用
小标 2018-11-14 来源 : 阅读 1080 评论 0

摘要:本文主要向大家介绍了PHP语言之php中的sprintf的应用,通过具体的内容向大家展示,希望对大家学习php语言有所帮助。

本文主要向大家介绍了PHP语言之php中的sprintf的应用,通过具体的内容向大家展示,希望对大家学习php语言有所帮助。


sprintf

将字串格式化。

语法: string sprintf(string format, mixed [args]...);

传回值: 字串

函式种类: 资料处理

内容说明 

本函式用来将字串格式化。参数 format 是转换的格式,以百分比符号 % 开始到转换字符为止。而在转换的格式间依序包括了

1. 填空字元。0 的话表示空格填 0;空格是内定值,表示空格就放着。 

2. 对齐方式。内定值为向右对齐,负号表向左对齐。 

3. 栏位宽度。为最小宽度。 

4. 精确度。指在小数点后的浮点数位数。

型态,见下表 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
转换字符
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
% 印出百分比符号,不转换。 
b 整数转成二进位。 
c 整数转成对应的 ASCII 字元。 
d 整数转成十进位。 
f 倍精确度数字转成浮点数。 
o 整数转成八进位。 
s 整数转成字串。 
x 整数转成小写十六进位。 
X 整数转成大写十六进位。

例子

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

使用范例 

$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;
// 此时变数 $money 值为 "123.1";
$formatted = sprintf ("%01.2f", $money);
// 此时变数 $ formatted 值为 "123.10"
?> 

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

这个 %01.2f 是什么意思呢?

首先 这个 % 符号是开始的意思,他写在最前面表示指定格式要开始了。 也就是 "起始字符", 直到出现 "转换字符" 为止,就算格式终止。

然后 跟在 % 符号 后面的是 0 这个零是 "填空字元" 表示,如果位置空着 就用0来填满。
在 0 后面的是 1 这个 1 是规定,小数点前面的数字占位要有1位以上。 

如果把 1 改成 2 如果 $money 的值为 1.23 ,则 $formatted 的值将为 01.23
因为,在小数点前面的数字只占了1位,按照上面所规定的格式,小数点前数字应该占2位,现在只有1位,所以,用0来填满。

到目前,在 %01 后面的 .2 (点2) 就很好理解了,它的意思是,规定,小数点后的数字,必需占2位. 如果这时候,$money 的值为 1.234,则 $formatted 的值将为 1.23。
为什么 4 不见了呢? 因为,在小数点后面 按照上面的规定,必需且仅能占2位。 可是 $money 的值中,小数点占了3位,所以,4 被去掉了,只剩下 23。

最后,以 f "转换字符" 结尾,其他转换字符请自行参考上面的转换字符列表。

关于对齐

如果在 % 起始符号后面 加上 - (负号) 则,将会把数字以向右对齐的方式进行处理。

列子


$money = 1.4;

$formatted = sprintf ("%-02.2f", $money);

echo $formatted;
?> 

这时候,$formatted 将不会再是 01.40 而是 1.400


本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标编程语言PHP频道!


本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程