3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [ 'first_level' => [ 'dir_3' => [ 'subdir_1' => [ 'file_2.mp4' => (object) [ 'name' => 'file_2.mp4' ], 'file_1.mp4' => (object) [ 'name' => 'file_1.mp4' ] ] ], 'dir_1' => [ 'subdir_2' => [ 'file_6.mp4' => (object) [ 'name' => 'file_6.mp4' ], 'file_9.mp4' => (object) [ 'name' => 'file_9.mp4' ], 'file_7.mp4' => (object) [ 'name' => 'file_7.mp4' ], 'file_17.mp4' => (object) [ 'name' => 'file_17.mp4' ], ], 'subdir_1' => [ 'file_8.mp4' => (object) [ 'name' => 'file_8.mp4' ], ] ] ], 'fake_level' => [ 'dir_7' => [ 'subdir_1' => [ 'file_5.mp4' => (object) [ 'name' => 'file_5.mp4', 'size' => 56, 'active' => true, ], 'file_19.mp4' => (object) [ 'name' => 'file_19.mp4', 'size' => 77, 'active' => false, ], 'file_33.mp4' => (object) [ 'name' => 'file_33.mp4', 'size' => 81, 'active' => true, ], ] ], 'dir_13' => [], 'dir_101' => [], 'dir_66' => [], ] ]; function nat_ksort_r(&$data): void { if (is_array($data)) { ksort($data, SORT_NATURAL); foreach ($data as &$item) { (__METHOD__)($item); } } } nat_ksort_r($array); var_export($array);
Output for 8.0.1 - 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.5.0
array ( 'fake_level' => array ( 'dir_7' => array ( 'subdir_1' => array ( 'file_5.mp4' => (object) array( 'name' => 'file_5.mp4', 'size' => 56, 'active' => true, ), 'file_19.mp4' => (object) array( 'name' => 'file_19.mp4', 'size' => 77, 'active' => false, ), 'file_33.mp4' => (object) array( 'name' => 'file_33.mp4', 'size' => 81, 'active' => true, ), ), ), 'dir_13' => array ( ), 'dir_66' => array ( ), 'dir_101' => array ( ), ), 'first_level' => array ( 'dir_1' => array ( 'subdir_1' => array ( 'file_8.mp4' => (object) array( 'name' => 'file_8.mp4', ), ), 'subdir_2' => array ( 'file_6.mp4' => (object) array( 'name' => 'file_6.mp4', ), 'file_7.mp4' => (object) array( 'name' => 'file_7.mp4', ), 'file_9.mp4' => (object) array( 'name' => 'file_9.mp4', ), 'file_17.mp4' => (object) array( 'name' => 'file_17.mp4', ), ), ), 'dir_3' => array ( 'subdir_1' => array ( 'file_1.mp4' => (object) array( 'name' => 'file_1.mp4', ), 'file_2.mp4' => (object) array( 'name' => 'file_2.mp4', ), ), ), ), )
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:
122.94 ms | 409 KiB | 5 Q