3v4l.org

run code in 300+ PHP versions simultaneously
<?php $locations = [ ['country'=>'USA', 'state'=>'New York', 'city'=>'NYC', 'location'=>'Central Park', 'street'=>'7th Ave', 'count'=>123], ['country'=>'USA', 'state'=>'Maryland', 'city'=>'Baltimore', 'location'=>'Harber', 'count'=>24], ['country'=>'USA', 'state'=>'Michigan', 'city'=>'Lansing', 'location'=>'Midtown', 'building'=>'H2B', 'count'=>7], ['country'=>'France', 'state'=>'Sud', 'city'=>'Marseille', 'location'=>'Centre Ville', 'count'=>12], ]; $hierarchy = array(); $levels = array_reverse( array('country', 'state', 'city', 'location') ); $lastLevel = 'count'; foreach ( $locations as $L ) { $array = $L[$lastLevel]; foreach ( $levels as $level ) { $array = array($L[$level] => $array); } $hierarchy = array_merge_recursive($hierarchy, $array); } print_r($hierarchy);
Output for 5.6.0 - 5.6.24, 7.0.0 - 7.0.20, 7.1.0 - 7.1.7, 7.2.0 - 7.2.33, 7.3.16 - 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.28, 8.4.1 - 8.4.14, 8.4.16, 8.5.0 - 8.5.1
Array ( [USA] => Array ( [New York] => Array ( [NYC] => Array ( [Central Park] => 123 ) ) [Maryland] => Array ( [Baltimore] => Array ( [Harber] => 24 ) ) [Michigan] => Array ( [Lansing] => Array ( [Midtown] => 7 ) ) ) [France] => Array ( [Sud] => Array ( [Marseille] => Array ( [Centre Ville] => 12 ) ) ) )
Output for 8.4.15
/bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.34' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15)
Process exited with code 1.

preferences:
229.1 ms | 408 KiB | 5 Q