似乎在PHP
7.1中,如果遇到非数字值,将发出警告。请参阅此链接。
这是与您收到的警告通知有关的相关部分:
当使用期望数字或它们的赋值等效项的运算符强制无效字符串时,将引入新的E_WARNING和E_NOTICE错误。当字符串以数字开头但包含尾随非数字字符时,将发出E_NOTICE;而
当字符串不包含数字值时,将发出E_WARNING。
我猜 $ item [‘quantity’] 或 $ product [‘price’]
都不包含数值,因此在尝试相乘之前请确保它们确实存在。可能在计算$ sub_total之前使用某种条件,例如:
<?phpif (is_numeric($item['quantity']) && is_numeric($product['price'])) { $sub_total += ($item['quantity'] * $product['price']);} else { // do some error handling...}


