【问题标题】:Number shown weird, not 2 decimal point数字显示奇怪,不是小数点后 2 位
【发布时间】:2016-05-10 09:41:39
【问题描述】:

对不起,我给了一个奇怪的标题......

我正在使用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>

请帮忙

【问题讨论】:

    标签: php mysql google-chrome laravel-4


    【解决方案1】:

    您可以使用 PHP 将数字向上取整,而不是更改数据类型。试试round()

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

    【讨论】:

      【解决方案2】:

      您也可以使用number_format

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

      【讨论】:

        【解决方案3】:

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

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

        【讨论】:

          猜你喜欢
          • 2020-03-14
          • 2011-03-10
          • 2011-05-27
          • 1970-01-01
          • 2016-02-09
          • 2022-12-05
          • 1970-01-01
          • 2013-02-23
          • 2023-01-02
          相关资源
          最近更新 更多