Группировка и использование значений в массиве PHP с использованием подстрок

У меня массив отсортирован в алфавитном порядке со строковыми значениями, такими как: «Лос-Анджелес, Калифорния»; «Осака, Япония»; «Сан-Диего, Калифорния»; "Токио, Япония"; и т. д. Мне нужно вывести html, который упорядочивает и группирует элементы в алфавитном порядке подстрокой после запятой, затем альфа подстрокой перед запятой. В идеале, я бы получил набор вложенных неупорядоченных списков:

Калифорния

Los Angeles San Diego 

Япония

 Osaka Tokyo 

Любая помощь приветствуется. Благодарю.

 $source_array = array(...); // your array $result_array = array(); foreach ($source_array as $item) { list($city, $state) = explode(',', $item); $state = trim($state); $result_array[$state][] = $city; } // then do some sort, ksort for example ksort($result_array);