这篇文章主要介绍“php中的sprintf是什么”,在日常操作中,相信很多人在php中的sprintf是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php中的sprintf是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
1.填空字元。0的话表示空格填0;空格是内定值,表示空格就放着。
2.对齐方式。内定值为向右对齐,负号表向左对齐。
3.栏位宽度。为最小宽度。
4.精确度。指在小数点后的浮点数位数。
型态,见下表
转换字符
%印出百分比符号,不转换。
b整数转成二进位。
c整数转成对应的ASCII字元。
d整数转成十进位。
f倍精确度数字转成浮点数。
o整数转成八进位。
s整数转成字串。
x整数转成小写十六进位。
X整数转成大写十六进位。
php中字符串格式化函数sprintf是什么
例子:
$money1=68.25;
$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中的sprintf是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。