1
假設$改編刪除多個「壞」的值是這樣的:如何從一個數組
Array
(
[0] => 43
[1] => 120
[2] => 5
[3] => 5465
[4] => 397
)
,我想111-5000之間的任意值被刪除。如果正確完成,我的陣列將是:
Array
(
[0] => 43
[1] => 5
[2] => 5465
)
希望按鍵更新自己。任何想法如何實現?
假設$改編刪除多個「壞」的值是這樣的:如何從一個數組
Array
(
[0] => 43
[1] => 120
[2] => 5
[3] => 5465
[4] => 397
)
,我想111-5000之間的任意值被刪除。如果正確完成,我的陣列將是:
Array
(
[0] => 43
[1] => 5
[2] => 5465
)
希望按鍵更新自己。任何想法如何實現?
使用array_filter()
一個自定義回調刪除不需要的值:
$array = array(43,120,5,5465,397);
$filtered = array_filter($array, function($val){
return ($val < 111 || $val > 5000);
});
print_r($filtered); // Array ([0] => 43 [2] => 5 [3] => 5465)
你也可以做
$array = array(43,120,5,5465,397);
$filtered = array_filter($array, function($val){
return !($val > 111 && $val < 5000);
});
您可以使用下面的邏輯過於實現。
foreach ($array as $key => $value) {
if($value >= 111 && $value <= 5000) {
unset($array[$key]);
}
}
但約翰在上述文章中提到的是最佳解決方案。它比這個邏輯更快。
謝謝!
太棒了!謝謝! – osakagreg