首先,感谢您查看我的问题。
我只想使用if,else语句将$ number中的正数加起来。
$numbers = array (1, 8, 12, 7, 14, -13, 8, 1, -1, 14, 7);
$total = 0;
if ($numbers < 0 {
$numbers = 0;
}
elseif (now i want only the positive numbers to add up in the $total.)
我是一名初中学生,我正在努力理解逻辑。
答案 0 :(得分:4)
我不会给出直接的答案,但是这里的方法是你需要一个简单的循环,可以是for或foreach循环,所以每次迭代你只需要检查循环中的当前数字是否大于零。
示例:
$numbers = array (1, 8, 12, 7, 14, -13, 8, 1, -1, 14, 7);
$total = 0;
foreach($numbers as $number) { // each loop, this `$number` will hold each number inside that array
if($number > 0) { // if its greater than zero, then make the arithmetic here inside the if block
// add them up here
// $total
} else {
// so if the number is less than zero, it will go to this block
}
}
或者正如迈克尔在评论中所说,一个功能也可以用于此目的:
$numbers = array (1, 8, 12, 7, 14, -13, 8, 1, -1, 14, 7);
$total = array_sum(array_filter($numbers, function ($num){
return $num > 0;
}));
echo $total;
答案 1 :(得分:2)
$numbers = array (1, 8, 12, 7, 14, -13, 8, 1, -1, 14, 7);
$total = 0;
foreach($numbers as $number)
{
if($number > 0)
$total += $number;
}
这循环遍历数组的所有元素(foreach =对于数组中的每个数字)并检查元素是否大于0,如果是,则将其添加到$total