我坚持这项运动,我似乎无法为我的生活而努力。
$numbers2 = [21, 5, 4, 6, 76, 2, 18, 85, 55, 1];
foreach ($numbers2 as &$value) {
$largeNumbers[] = $value > 20;
}
这是我到目前为止的代码。我在这里尝试做的是使用for-each循环将所有大于20的数字添加到另一个数组中,我将其命名为$ largeNumbers。我上面插入的代码似乎是打印出真值和假值,这不是我想要的。我真的很感激有人可以告诉我,我可能做错了什么,甚至告诉我一个更好的方法。 我必须使用for-each循环。
答案 0 :(得分:4)
对于每个项目,您正在检查它是否大于20,这会产生一个布尔值(它是否为),然后将该值存储到结果数组中。相反,您可以使用if
语句来仅采用符合条件的元素:
foreach ($numbers2 as &$value) {
if ($value > 20) {
$largeNumbers[] = $value;
}
}
答案 1 :(得分:1)
public interface IOnBackPressed {
/**
* Si vous retouné true le back press ne sera pas pris en compte, sinon l'activité agira naturellement
* @return true si votre traitement est prioritaire sinon false
*/
boolean onBackPressed();
}
输出:
<?php
$nums = [21, 5, 4, 6, 76, 2, 18, 85, 55, 1];
$less_than_or_equal_to_20 = [];
foreach($nums as $v)
if($v <= 20)
$less_than_or_equal_to_20[] = $v;
$out = array_diff($nums, $less_than_or_equal_to_20);
var_export($out);
答案 2 :(得分:0)
<?php
$nums = [21, 5, 4, 6, 76, 2, 18, 85, 55, 1];
foreach([$nums] as $v)
$out = array_filter($v, function($v) {
return $v > 20;
});
var_export($out);
输出:
array ( 0 => 21, 4 => 76, 7 => 85, 8 => 55, )