84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
大神看图 我用foreach遍历数组后 对一个价格做处理 用number_format()先将小数转换为一位小数的再用sprintf()给小数的第二位补0
但是问题来了 用foreach赋值的变量 最后输出的值就莫名其妙的成了1.00但是直接给一个变量赋值一个字符串类型的小数或者浮点型的小数 最后输出就是正常的 我搞不明白了。。。求助
小伙看你根骨奇佳,潜力无限,来学PHP伐。
没明白你什么意思,直接number_format($val, 2)不就行了吗?为什么还要sprintf('%.2f', $str)呢?number_format会自动进行四舍五入的,所以number_format(0.97, 1)的结果是1.0,再sprintf就是1.00,有什么问题么?如果你是为了去掉千分位的分隔符,可以用 number_format($val, 2, '', '.')这种方式。
1,350.2 和 1350.2 是不一样的吧。
显然跟那个逗号有关系啊
问题解决了,和1,345.23的那个逗号有关系,昨晚只注意数据类型了,忘了那个逗号的问题了用 number_format($temp,1,'.','') 就可以完美解决这个问题了
number_format($temp,1,'.','')
没明白你什么意思,直接number_format($val, 2)不就行了吗?为什么还要sprintf('%.2f', $str)呢?number_format会自动进行四舍五入的,所以number_format(0.97, 1)的结果是1.0,再sprintf就是1.00,有什么问题么?
如果你是为了去掉千分位的分隔符,可以用 number_format($val, 2, '', '.')这种方式。
1,350.2 和 1350.2 是不一样的吧。
显然跟那个逗号有关系啊
问题解决了,和1,345.23的那个逗号有关系,昨晚只注意数据类型了,忘了那个逗号的问题了
用
number_format($temp,1,'.','')
就可以完美解决这个问题了