3v4l.org

run code in 300+ PHP versions simultaneously
<?php $data = [ [ 'first_name' => 'GM', 'middle_name' => null, 'last_name' => 'Akbari', 'guest_booking' =>[ [ 'booking_number' => 20008683, 'ship_code' => 'OST', 'room_no' => 'A0073', 'start_time' => 1438214400, 'end_time' => 1483142400, 'is_checked_in' => true, ] ], 'guest_account' => [ [ 'account_id' => 20009503, 'status_id' => 2, 'account_limit' => 0, 'allow_charges' => true, ] ] ], [ 'first_name' => 'Alex ', 'middle_name' => null, 'last_name' => 'Marvi', 'guest_booking' => [ [ 'booking_number' => 10000013, 'room_no' => 'B0092', 'is_checked_in' => true, ], ], 'guest_account' => [ [ 'account_id' => 10000500, 'account_limit' => 300, 'allow_charges' => true, ], ], ], ]; function sortMyArray(array &$array, $target_key) { $columnValues = []; array_walk_recursive( $array, function($v, $k, $key) use (&$columnValues) { if ($k === $key) { $columnValues[] = $v; } }, $target_key ); array_multisort($columnValues, $array); } sortMyArray($data, 'account_id'); var_export($data);
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
array ( 0 => array ( 'first_name' => 'Alex ', 'middle_name' => NULL, 'last_name' => 'Marvi', 'guest_booking' => array ( 0 => array ( 'booking_number' => 10000013, 'room_no' => 'B0092', 'is_checked_in' => true, ), ), 'guest_account' => array ( 0 => array ( 'account_id' => 10000500, 'account_limit' => 300, 'allow_charges' => true, ), ), ), 1 => array ( 'first_name' => 'GM', 'middle_name' => NULL, 'last_name' => 'Akbari', 'guest_booking' => array ( 0 => array ( 'booking_number' => 20008683, 'ship_code' => 'OST', 'room_no' => 'A0073', 'start_time' => 1438214400, 'end_time' => 1483142400, 'is_checked_in' => true, ), ), 'guest_account' => array ( 0 => array ( 'account_id' => 20009503, 'status_id' => 2, 'account_limit' => 0, 'allow_charges' => true, ), ), ), )

preferences:
121.86 ms | 405 KiB | 121 Q