如何以特定鍵值範圍過濾 PHP 陣列並保持鍵名?遵循以下步驟:定義一個回呼函數,檢查鍵值是否在指定範圍內。呼叫 array_filter(),傳入回調函數和陣列作為參數。
PHP:如何按特定鍵值範圍過濾陣列並保持鍵名?
在 PHP 中,我們可以使用 array_filter()
函數以特定鍵值範圍來過濾數組,同時保持鍵名。此函數接受一個回呼函數作為參數,該回調函數決定是否保留數組中的每個元素。
回呼函數
回呼函數應該接受兩個參數:金鑰和值。它傳回一個布林值,指示是否保留該元素。
語法
array_filter($array, $callback, $flag = 0);
其中:
#$array
是要過濾的陣列。 $callback
是一個回呼函數,決定是否保留陣列中的每個元素。 $flag
是一個可選參數,指定如何對陣列中的元素進行索引。 範例
假設我們要從一個關聯陣列中篩選出鍵值在特定範圍內的元素。以下是實現此目的的步驟:
array_filter()
,將回呼函數和陣列作為參數傳遞。 程式碼
<?php $array = [ "a" => 1, "b" => 2, "c" => 3, "d" => 4, "e" => 5, ]; // 定义回调函数 $callback = function ($key, $value) { return $value >= 2 && $value <= 4; }; // 按键值范围过滤数组 $filteredArray = array_filter($array, $callback); // 输出结果 print_r($filteredArray); ?>
輸出
#Array ( [b] => 2 [c] => 3 [d] => 4 )
如你所見,結果陣列只包含鍵值為2到4 之間的元素,並且鍵名已保留。
以上是PHP:如何以特定鍵值範圍過濾陣列並保持鍵名?的詳細內容。更多資訊請關注PHP中文網其他相關文章!