2 回答

TA貢獻1827條經驗 獲得超8個贊
您可以使用循環大大簡化它foreach,尤其是每次獲取鍵和值以幫助構建數組。
這也使用第一級的鍵explode()將結果添加到using ,但也只是將值添加到數組的末尾 using ... $newArray$newArray[$mainKey][][]
foreach ( $array as $mainKey => $elements ) {
foreach ( $elements as $subKey => $value ){
$newData = explode("_", $subKey);
$newData[] = $value;
$newArray[$mainKey][] = $newData;
}
}
用你的測試數據給出......
Array
(
[company_info] => Array
(
[0] => Array
(
[0] => country
[1] => period
[2] => 0
[3] => 10
)
[1] => Array
(
[0] => currency
[1] => period
[2] => 0
[3] => 20
)
)
[finance] => Array
(
[0] => Array
(
[0] => values
[1] => period
[2] => 0
[3] => 30
)
)
)
我只是注意到我丟失了第二個company_info數據,所以這意味著值將始終是數組,除非你真的只在需要時才需要它們是數組。

TA貢獻1828條經驗 獲得超6個贊
$new_array=[];
foreach($array as $category => $tmp ){
foreach($tmp as $key => $value){
$exp = explode('_', $key);
$exp[] = $value;
$new_array[ $category ][] = $exp;
}
}
- 2 回答
- 0 關注
- 129 瀏覽
添加回答
舉報