如何基于鍵值下標重組不規則二維數組?

如何基于鍵值下標重組不規則二維數組?

巧妙重組不規則二維數組:基于鍵值下標的php解決方案

本文介紹一種高效方法,利用PHP將不規則二維數組,根據鍵值下標重新組合成規則數組。 目標是將具有相同鍵值下標的元素收集到一起。

示例數據:

$arr = [     ['測試-2票', '顏夕-2票'],     ['小白-2票', '小黑-2票'],     ['張張-2票', '小黃-2票', '小綠-2票'], ];

目標結果:

[     [         '測試-2票',         '小白-2票',         '張張-2票'     ],     [         '顏夕-2票',         '小黑-2票',         '小黃-2票'     ],     [         '小綠-2票'     ] ]

PHP的array_map函數結合…展開運算符,可以完美解決此問題。

以下代碼片段展示了如何使用array_map函數實現:

<?php $arr = [     ['測試-2票', '顏夕-2票'],     ['小白-2票', '小黑-2票'],     ['張張-2票', '小黃-2票', '小綠-2票'], ];  // PHP 7.4+  簡潔的箭頭函數寫法 $result = array_map(fn(...$i) => $i, ...$arr);  // 或者使用傳統匿名函數 (適用于PHP 5.3+) // $result = array_map(function (...$list) { //     return $list; // }, ...$arr);  var_dump($result); ?>

這段代碼將每個子數組元素作為參數傳遞給匿名函數(或箭頭函數),函數直接返回這些元素,從而實現按鍵值下標重組數組。 請注意,此代碼修正了原始問題示例中關于“小綠-2票”下標的錯誤。

通過這個方法,我們可以輕松地處理不規則二維數組,并將其轉換為更易于管理和操作的結構。

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享