php舍入小数不工作

时间:2014-03-20 15:47:02

标签: php math decimal

我有一些代码,但它没有回应正确的答案,或者格式正确。我尝试了圆形功能,但没有显示任何内容

here is my code

$total_per_year = 308790;

$fat = $total_per_year / 3500;

echo $fat;

它目前显示为0.088,但正确的答案是88.2257142857

我怎么能这样做,所以它可以达到88.2

3 个答案:

答案 0 :(得分:5)

round函数需要两个参数:

echo round($fat,1);

第二个参数是您需要的小数位数。

我之前遇到的问题是圆形无法按预期工作,我不得不使用number_format

echo number_format((float)$fat,1,'.','');

1表示所需的小数位数,句号为小数点分隔符,''为千位分隔符。

答案 1 :(得分:1)

使用round()

echo round($fat, 1); //second argument is precision eg. decimals

请参阅此文档:http://dk1.php.net/round

答案 2 :(得分:0)

好吧,我现在就把它解决了。我知道我一直得到'0.088'。这是错误的。

因为我喜欢这个

$total_per_day = number_format($total_per_cup * $number_of_cups);

$total_per_year = number_format($total_per_day * 365);

$fat = round($total_per_year / 3500, 1);

echo $fat;
echo $total_per_year;

这是正确的代码。

$total_per_cup = $type_calorie + $milk_calorie + $sugar_calorie;

$total_per_day = $total_per_cup * $number_of_cups;

$total_per_year = $total_per_day * 365;

$fat = $total_per_year / 3500;



echo json_encode(array('total'=> number_format($total_per_year) , 'perday' => number_format($total_per_day), 'fat'=> round($fat, 1)));