if ($unitWeight != 0)
{
$saleableUnits = ($sumQty/$unitWeight);
$unitCost = ($sumCost/$saleableUnits);
}
我期望此语句仅在$unitWeight大于0时运行。无论发生什么,它似乎都会运行,并且我得到了这个错误。
“警告:在中除以零”
发布于 2015-12-10 09:49:19
尝试对变量进行类型转换
$unitWeight = (int) "0";
var_dump(($unitWeight));
或者使用abs()
或intval()
$unitWeight = "0";
var_dump(abs($unitWeight));
发布于 2015-12-10 09:47:55
使用大于(>)
if ($unitWeight > 0)
{
$saleableUnits = ($sumQty/$unitWeight);
$unitCost = ($sumCost/$saleableUnits);
}
发布于 2015-12-10 09:51:49
如果您希望该语句仅在$unitWeight
> 0时运行,则应该使用该语句。
如下所示:
if (intval($unitWeight) > 0){
$saleableUnits = ($sumQty/$unitWeight);
$unitCost = ($sumCost/$saleableUnits);
}
使用intval()获取intval — Get the integer value of a variable
,如官方文档here中所述
请记住,清理您的输入并确保只接受数字值始终是有益的,也是必须的。
https://stackoverflow.com/questions/34198393
复制