数字显示奇怪,不是2小数点

时间:2016-05-10 09:41:39

标签: php mysql google-chrome laravel-4

抱歉我给了一个奇怪的标题......

我正在使用laravel4.2来开发和使用Chrome来运行该程序,我的同事显示了46.35%,但我显示了46.349998474121%。它应该显示2个小数点。

我尝试将数据类型更改为float(5,2),失败。 我尝试将数据类型更改为float(24,2),失败。

这是我的代码:

<div class="row">
    <div class="col-sm-3">
        <input class="form-control" type="text" name="ratio" id="ratio" style="text-align:right;" maxlength="5"  value="{{{ Input::old('ratio', isset($mainArray) ? $mainArray->ratio : null) }}}"/>
    </div>%
</div>

请帮助

3 个答案:

答案 0 :(得分:0)

您可以使用PHP对数字进行舍入,而不是更改数据类型。试试round()

{{{ Input::old('ratio', isset($mainArray) ? round($mainArray->ratio, 2) : null) }}}

答案 1 :(得分:0)

您还可以使用number_format

{{{ Input::old('ratio', (isset($mainArray) ? number_format($mainArray->ratio, 2) : null)) }}}

答案 2 :(得分:0)

您能否显示传递给视图的确切json或值。 因为将值包装在round($mainArray->ratio, 2)中应该可以解决问题。我自己多次使用过。为了找到您正在寻找的确切解决方案,我想看看您的数据将以何种格式查看。

在控制器中键入return $variable以找出您要传递的内容并在此处分享。