gpt4 book ai didi

php - 重组(过滤和展平)数组的每一行

转载 作者:行者123 更新时间:2023-12-04 14:28:43 27 4
gpt4 key购买 nike

好吧,我有这个数组 $city :

[2] => Array
(
[0] => Array
(
[0] => fr
[1] => paris
[2] => a8
)

[1] => 0
[2] => 116729
)

[3] => Array
(
[0] => Array
(
[0] => fr
[1] => marseille
[2] => b8
)

[1] => 0
[2] => 12898
)

[4] => Array
(
[0] => Array
(
[0] => fr
[1] => lyon
[2] => b9
)

[1] => 0
[2] => 8608
)

等等...我正在尝试将其转换为:

[2] => Array
(
[0] => fr
[1] => paris
[2] => 0
[3] => 116729
)

[3] => Array
(
[0] => fr
[1] => marseille
[2] => 0
[3] => 12898
)

[4] => Array
(
[0] => fr
[1] => lyon
[2] => 0
[3] => 8608
)

这是我的做法:

foreach ($city as $key => $value){
$city[$key][0] = $city[$key][0][0];
array_splice( $city[$key], 1, 0, $city[$key][0][1] );
}

但这里的问题是结果数组:

[2] => Array
(
[0] => fr
[1] => r
[2] => 0
[5] => 0
)

[3] => Array
(
[0] => fr
[1] => r
[2] => 0
[5] => 0
)

[4] => Array
(
[0] => fr
[1] => r
[2] => 0
[5] => 0
)

我的代码中有什么错误,我可以修复它吗?

最佳答案

您可以使用 array_map 代替 foreach:

$result = array_map(
function ($v) { return array_merge(array_slice($v[0], 0, 2), array_slice($v, 1)); },
$array
);

Demo

关于php - 重组(过滤和展平)数组的每一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24201031/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com