高效統計php二維數組中特定下標值的出現次數
本文介紹一種高效方法,用于統計PHP二維數組中特定下標的值的出現次數。 假設我們有一個二維數組,每個子數組包含id、name和age三個鍵值對,我們需要統計age值為18的元素個數。
以下是一個示例二維數組:
$Array = [ ['id' => 1, 'name' => 'A', 'age' => 19], ['id' => 2, 'name' => 'B', 'age' => 20], ['id' => 3, 'name' => 'C', 'age' => 18], ['id' => 5, 'name' => 'D', 'age' => 18], ['id' => 6, 'name' => 'E', 'age' => 18] ];
我們可以使用array_reduce函數來簡潔地實現統計:
立即學習“PHP免費學習筆記(深入)”;
$count = array_reduce($array, function ($carry, $item) { return $item['age'] === 18 ? ++$carry : $carry; }, 0); echo "age為18的元素有{$count}個。"; // 輸出:age為18的元素有3個。
array_reduce函數將數組$array中的每個元素依次傳遞給匿名函數。匿名函數檢查age是否等于18,如果是,則累加器$carry加1;否則,$carry保持不變。初始值為0。最終,array_reduce返回累加器的值,即age為18的元素個數。
這種方法比使用foreach循環更簡潔高效,尤其是在處理大型數組時,性能優勢更為明顯。 您可以根據需要修改$item[‘age’] === 18部分來統計其他下標的值。 例如,要統計id為3的元素個數,只需將該部分修改為$item[‘id’] === 3即可。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END