3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array['page']['article']['header'] = "Header"; $array['page']['article']['body'] = "Body"; $array['page']['article']['footer'] = "Footer"; $array['page']['news']['header'] = "Header"; $array['page']['news']['body'] = "Body"; $array['page']['news']['footer'] = "Footer"; function rearrange($array){ $output = []; foreach($array as $key => $val){ if(is_array($val)){ $out = rearrange($val); foreach($out as $sub_key => $sub_val){ $output[$key . "." . $sub_key] = $sub_val; } }else{ $output[$key] = $val; } } return $output; } print_r(rearrange($array));
Output for 7.2.0 - 7.2.34, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.27, 8.4.1 - 8.4.14
Array ( [page.article.header] => Header [page.article.body] => Body [page.article.footer] => Footer [page.news.header] => Header [page.news.body] => Body [page.news.footer] => Footer )

preferences:
169.88 ms | 407 KiB | 5 Q