84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
比如我有几个数字(小数点后面的位数不固定):
1、155.0552、122.1963、0.9631
我怎么做才能让这些数字的小数点最后一位+1,或者-1?比如+1的话希望得到:
1、155.0562、122.1973、0.9632
认证高级PHP讲师
$num =12.2346; $tmp = explode('.',$num); $dec = end($tmp); $count = strlen($dec); $p= pow(0.1,$count); $result = $num+$p; echo($result);
自己改成函数吧, 有些地方还要加些判断,
都存成整数吧,然后存储一个小数点的位置。因为 float 型 还是不能准确的表示 0.1 0.01 0.001 。。。等数据的,多次添加删除之后会有累计误差,甚至加了跟没加一样。比如
0.1+0.2 == 0.30000000000000004
$n = 10.123;$fix = floatval(pow(10, strlen(explode('.', strval($n))[1])));$n = ($n*$fix + 1)/$fix;
自己改成函数吧, 有些地方还要加些判断,
都存成整数吧,然后存储一个小数点的位置。
因为 float 型 还是不能准确的表示 0.1 0.01 0.001 。。。等数据的,多次添加删除之后会有累计误差,甚至加了跟没加一样。
比如
$n = 10.123;
$fix = floatval(pow(10, strlen(explode('.', strval($n))[1])));
$n = ($n*$fix + 1)/$fix;