Return 如果在 PHP 中遇到被零除则为零值
Return zero value if division by zero is encountered in PHP
我正在做一个项目,我将一个数组与另一个数组分开,问题是我要分开的数组包含一些值为零的元素。这给了我警告 "Division by zero" 以及 return 值 "INF"。如果可能的话,我希望除以零到 return 值零。我对编程很陌生,如果有人能帮助我或就如何解决这个问题给出一些提示,我将不胜感激。以下是问题的简化案例。
$arr1 = array(10, 20, 30);
$arr2 = array(1, 2, 0);
$arr3 = array_map(function ($a,$b) {return $a / $b;}, $arr1, $arr2);
print_r($arr3);
所以目前的输出是:
Array ( [0] => 10 [1] => 10 [2] => INF )
我想要的输出是:
Array ( [0] => 10 [1] => 10 [2] => 0 )
只要检查参数是否为零:
$arr1 = [10, 20, 30];
$arr2 = [1, 2, 0];
$arr3 = array_map(function ($a, $b) {
if($b === 0) {
return 0;
}
return $a / $b;
}, $arr1, $arr2);
print_r($arr3);
我正在做一个项目,我将一个数组与另一个数组分开,问题是我要分开的数组包含一些值为零的元素。这给了我警告 "Division by zero" 以及 return 值 "INF"。如果可能的话,我希望除以零到 return 值零。我对编程很陌生,如果有人能帮助我或就如何解决这个问题给出一些提示,我将不胜感激。以下是问题的简化案例。
$arr1 = array(10, 20, 30);
$arr2 = array(1, 2, 0);
$arr3 = array_map(function ($a,$b) {return $a / $b;}, $arr1, $arr2);
print_r($arr3);
所以目前的输出是:
Array ( [0] => 10 [1] => 10 [2] => INF )
我想要的输出是:
Array ( [0] => 10 [1] => 10 [2] => 0 )
只要检查参数是否为零:
$arr1 = [10, 20, 30];
$arr2 = [1, 2, 0];
$arr3 = array_map(function ($a, $b) {
if($b === 0) {
return 0;
}
return $a / $b;
}, $arr1, $arr2);
print_r($arr3);