PHP 7.1.7 - 遇到非数字值 - 尽管已经检查 is_numeric
PHP 7.1.7 - A non-numeric value encountered - even though already checked is_numeric
我在尝试添加时遇到了这个非数字错误,尽管我已经用 is_numeric 进行了检查。我试过用 number_format、(float)、(int) 转换 $value。似乎没有任何效果。这些值存在并且来自已发布的多个字段。
$amount = 0;
$transaction_amount = isset($_POST['TransactionCharge']['amount']) ? $_POST['TransactionCharge']['amount']: array();
foreach($transaction_amount as $value) {
if ( is_numeric($value) ) {
$amount += number_format($value,2);
}
}
有趣的注释:
$amount = array_sum($transaction_amount);
似乎可以代替迭代数组。这是在 7.1 中执行此操作的唯一方法吗?
简单的使用了array_sum的方法来实现。
我在尝试添加时遇到了这个非数字错误,尽管我已经用 is_numeric 进行了检查。我试过用 number_format、(float)、(int) 转换 $value。似乎没有任何效果。这些值存在并且来自已发布的多个字段。
$amount = 0;
$transaction_amount = isset($_POST['TransactionCharge']['amount']) ? $_POST['TransactionCharge']['amount']: array();
foreach($transaction_amount as $value) {
if ( is_numeric($value) ) {
$amount += number_format($value,2);
}
}
有趣的注释:
$amount = array_sum($transaction_amount);
似乎可以代替迭代数组。这是在 7.1 中执行此操作的唯一方法吗?
简单的使用了array_sum的方法来实现。