我在重新排列数组时遇到问题。这是我的最后一个数组:
Array
(
[5833261e-dc14-48e3-9ee1-682a7f000201] => Array
(
[344] => apple - 344
[345] => apple - 345
[acc_name] => Apple 1233 - acc_name
)
[58332069-fab4-44c7-9ac9-487b7f000201] => Array
(
[343] => apple 123456 - 343
[acc_name] => Orange Test - acc_name
)
)
我想重新排列为如下所示:
Array
(
[Apple 1233 - acc_name] => Array
(
[344] => apple - 344
[345] => apple - 345
)
[Orange Test - acc_name] => Array
(
[343] => apple 123456 - 343
)
)
伙计们,您可以实现此输出数组吗?
您可以按照以下方式进行操作:-
$new_array = array();
foreach ($array as $key=>$val){
$acc_name = $val['acc_name'];
unset($array[$key]['acc_name']);
$new_array[$acc_name] = $array[$key];
}
echo "<pre/>";print_r($new_array);
注意:-完成后,您可以将此新数组分配给原始数组,例如 $array = $new_array
根据评论做一件事:-
$new_array = array();
foreach ($array as $key=>$val){
$acc_name = $val['acc_name'];
unset($array[$key]['acc_name']);
$new_array[$acc_name][] = $array[$key];
}
echo "<pre/>";print_r($new_array);
注意:-在数组中,如果相同的索引即将到来,则新数据将替换旧的数据。因此,尝试第二种解决方案
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句