如何在PHP 中根據特定條件高效過濾數組
在程式設計中,經常需要從數組中過濾掉特定元素基於特定條件的數組。以下是一個實際的例子:
考慮一個陣列:
array("a" => 2, "b" => 4, "c" => 2, "d" => 5, "e" => 6, "f" => 2)
目標是過濾這個陣列並只保留那些值等於 2 的元素。我們想要保留原來的元素數組鍵。
PHP 提供了一個名為 array_filter 的內建函數,可用來完成此任務。 array_filter 接受兩個參數:要過濾的陣列和定義過濾條件的回呼函數。
在我們的範例中,我們可以定義一個回調函數filterArray,它接受單一參數($value)並在以下情況下傳回true值等於2,否則為false:
function filterArray($value){ return ($value == 2); }
現在,我們可以使用array_filter 函數根據filterArray來過濾數組回調:
$filteredArray = array_filter($fullArray, 'filterArray');
產生的$filteredArray 將只包含那些值等於2 的元素:
array("a" => 2, "c" => 2, "f" => 2)
如您所見,原始數組中的鍵已被保留。
以上是如何在保留鍵的同時根據特定值有效過濾 PHP 陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!