Массив сортировки PHP по ключу

У меня есть этот вывод:

Array ( [0] => Array ( [id] => 4 [username] => bla1 ) [1] => Array ( [id] => 5 [username] => bla2 ) [2] => Array ( [id] => 6 [username] => bla3 ) ) 

Как я могу сортировать 3 массива внутри этого внешнего массива по имени пользователя?

Это то, что я пробовал:

 if($this->needOrder) { $sorted = []; foreach($files as $file) { $sorted[] = asort($tableFile); } return $sorted; } 

$files имеет содержимое кода выше. asort() предназначен только для тестирования, если он работает. Но мое возвращение:

 Array ( [0] => 1 [1] => 1 [2] => 1 ) 

Использовать usort ()

 $arr = Array( array('id' => 4,'username' => 'bla2'), array('id' => 5,'username' => 'bla3'), array('id' => 6,'username' => 'bla1'), ); function custom_sort($a, $b) { return strnatcmp($a['username'], $b['username']); } usort($arr, "custom_sort"); print '<pre>'; print_r($arr); print '</pre>'; 

Вывод:

 Array ( [0] => Array ( [id] => 4 [username] => bla1 ) [1] => Array ( [id] => 4 [username] => bla2 ) [2] => Array ( [id] => 4 [username] => bla3 ) )