PHP 7.1 货币计算



我已经更新到 PHP 7.1,这个简单的计算现在返回为"遇到格式不正确的数值"错误

$balance = "-16,438.56";
$amount = "1000.00";
return $balance-$amount;

我需要知道如何管理这个问题的帮助 谢谢

您需要从$balance中删除逗号。

$balance = "-16438.56";

您可以将其转换为浮点值。

$balance = -16438.56;
$amount = 1000.00;
echo $balance-$amount;
$ -17438.56

您的余额中有逗号,因此请先删除逗号。如果您想确定,也可以键入提示。

$balance = str_replace(',','',$balance);
return (float) $balance - (float) $amount;

PHP 的-运算符可以为您隐式地将字符串转换为浮点数,但该强制转换为与千步逗号不兼容,因此请去掉逗号,进行计算,并在计算后重新添加逗号,例如

$balance = "-16,438.56";
$amount = "1000.00";
return number_format ( (( float ) (str_replace ( ",", "", $balance ))) - (( float ) (str_replace ( ",", "", $amount ))), 2, ".", "," );

最新更新