3v4l.org

run code in 300+ PHP versions simultaneously
<?php $list = array( 'ind' => array( 'messagetype' => 'Alert', 'visibility' => 'Public', 'info' => array( 0 => array( 'urgency' => 'Urgent', 'params' => array( 0 => array( 'Name' => 'display', 'value' => '3; top', ), 1 => array( 'Name' => 'level', 'value' => '1; blue', ), ), 'area' => array( 'ard' => 'Bob', 'code' => array( 0 => array( 'Name' => 'Badge', 'value' => 'GSSD154', ), ), ), ), 1 => array( 'messagetype' => 'Information', 'visibility' => 'Private', 'info' => array( 0 => array( 'urgency' => 'Minor', 'params' => array( 0 => array( 'Name' => 'display', 'value' => '1; left', ), 1 => array( 'Name' => 'level', 'value' => '1; red', ), ), 'area' => array( 'ard' => 'Bob', 'code' => array( 0 => array( 'Name' => 'Badge', 'value' => 'GBECS23', ), ), ), ), ), ), ), ), ); function replaceKeys(&$arr) { foreach ($arr as &$v) { if ( !is_array($v) ) continue; $keys = array_keys($v); $count = count($keys); if ( $count < 2 || $keys !== array_flip($keys) || array_keys(array_merge(...$v)) !== ['Name', 'value'] ) { replaceKeys($v); continue; } foreach ($v as $k => &$item) { $item = array_combine(["Name$k", "value$k"], $item); } } } replaceKeys($list); print_r($list);
Output for 7.2.0 - 7.2.33, 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.25, 8.4.1 - 8.4.12
Array ( [ind] => Array ( [messagetype] => Alert [visibility] => Public [info] => Array ( [0] => Array ( [urgency] => Urgent [params] => Array ( [0] => Array ( [Name0] => display [value0] => 3; top ) [1] => Array ( [Name1] => level [value1] => 1; blue ) ) [area] => Array ( [ard] => Bob [code] => Array ( [0] => Array ( [Name] => Badge [value] => GSSD154 ) ) ) ) [1] => Array ( [messagetype] => Information [visibility] => Private [info] => Array ( [0] => Array ( [urgency] => Minor [params] => Array ( [0] => Array ( [Name0] => display [value0] => 1; left ) [1] => Array ( [Name1] => level [value1] => 1; red ) ) [area] => Array ( [ard] => Bob [code] => Array ( [0] => Array ( [Name] => Badge [value] => GBECS23 ) ) ) ) ) ) ) ) )

preferences:
113.65 ms | 419 KiB | 5 Q