Php 在小数点后显示4位数字,但不舍入值
我有一些十进制值,如下所示Php 在小数点后显示4位数字,但不舍入值,php,Php,我有一些十进制值,如下所示 6.8199999999999 5.245 0.00147 18.333398 7.1 我需要在小数点后用4位数字显示这些数字,不需要如下四舍五入 6.8199 5.2450 0.0014 18.3333 7.1000 我尝试在php中使用number\u format(),但它会对值进行舍入 任何帮助都将不胜感激这应该对您有用: $number = 6.8199999999999; echo $number = sprintf('%.4f', floor($n
6.8199999999999
5.245
0.00147
18.333398
7.1
我需要在小数点后用4位数字显示这些数字,不需要如下四舍五入
6.8199
5.2450
0.0014
18.3333
7.1000
我尝试在php中使用number\u format()
,但它会对值进行舍入
任何帮助都将不胜感激这应该对您有用:
$number = 6.8199999999999;
echo $number = sprintf('%.4f', floor($number*10000*($number>0?1:-1))/10000*($number>0?1:-1));
输出:
6.8199
您可以使用类似于
if(strpos('.',$number)!==false){$number=substr('number,0,strpos('.',$number)+4)}
。这可能需要+5,我不太清楚。或者你可以在4个位置后截断浮动,比如floor($number*10000)/10000代码>很好。。它可以工作,但当它变为负值时有一个小问题。当我尝试使用$number=-6.819999999代码>它给了我-6.8200
。知道怎么解决吗?@LiveEn现在应该可以了!你只需要知道诀窍:另一个幸福的结局。