第二条%号后面的0 是填空字元 不是很懂什么意思
表示 如果位置空着 就用0填满 哪里空着?怎么空着啊?
表示 如果位置空着 就用0填满 哪里空着?怎么空着啊?
2015-12-06
这个 % 符号是开始的意思,写在最前面表示指定格式开始了。 也就是 "起始字符", 直到出现 "转换字符" 为止,就算格式终止。
在 0 后面的是1,这个 1 是规定整个所有的字符串占位要有1位以上(小数点也算一个占位)。
比如
$str = '100.1';
$result = sprintf('%08.3f',$str); //我智力 0 之后写的是 8
echo $result; //输出 0100.100 为什么呢。因为100.1 只有五位数(算上小数点。)而我在sprintf里面要求小数为要有三位,所以1后面多了两个0, 加上那两个0 现在总的也只有五位数,而我在sprintf里面规定了总的要有8位。又因为 在sprintf %后面第一个规定了 不足位数用 0填充,所以 才输出了 0100.100
举报