我有个严重的问题。我的网页正在执行一个简单的公式来更新价格,如果该项目应该在销售。

<?php if(isset($row_Brand['Sale']))
      {
         $YourPrice = ($row_Brand['Sale'] * number_format($row_Recordset1['Price'], 2, '.', ''));
      }
      else
      {
         ($YourPrice = number_format($row_Recordset1['Price'], 2, '.', ''));
      }
  ?>

价格是1549.00英镑。然而,数字格式使用上述代码使其为1.00。因此,结果远非如此。这是一个严重的问题,我认为代码没有任何问题。

最佳答案

问题是number_format()无法解析包含逗号的数字。你可以用str_replace(',', '', $row_Recordset1['Price'])来解决这个问题,然后在号码上做一个number_format()

if(isset($row_Brand['Sale']))
{
     $YourPrice = ($row_Brand['Sale'] * number_format(str_replace(',', '', $row_Recordset1['Price']), 2, '.', ''));
}
else
{
     ($YourPrice = number_format(str_replace(',', '', $row_Recordset1['Price']), 2, '.', ''));
}

关于php - 为什么$ thousands_sep不能删除逗号?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28311622/

10-14 00:24