What are the advantages and disadvantages of creating "Index-Arrays" to sort values in PHP?

One advantage of creating "Index-Arrays" to sort values in PHP is that it can improve the efficiency of sorting large datasets by reducing the number of comparisons needed. Additionally, index arrays can provide a more straightforward way to access sorted values without altering the original array. However, a potential disadvantage is the additional memory overhead required to store the index array alongside the original data.

// Create an index array to sort values in PHP
$data = [5, 2, 8, 1, 9];
$index_array = range(0, count($data) - 1);

// Sort the index array based on the values in the original data array
usort($index_array, function($a, $b) use ($data) {
    return $data[$a] <=> $data[$b];
});

// Access the sorted values using the index array
foreach ($index_array as $index) {
    echo $data[$index] . " ";
}