Sorting Arrays in PHP
Здравейте,
Опитвам се да намеря отговор на следния въпрос: Ако имаме асоциативен масив, ключовете на който са стрингове, а стойностите са числа, и сортираме масива по големина на числата във възходящ ред, как след това да сортираме новополучения масив, този път за да подредим по азбучен ред стринговете, на които съответстват едни и същи числа.
Ако например имаме $arr = array("evelin" => 10,
"don" => 100,
"alex" => 1000,
"eve" => 10,
"gim" => 100,
"alec" => 1000
);
И сортираме $arr с uasort( $arr, function( $a,$b ){ return $a - $b; } ); , ще получим
$arr = array( "evelin" => 10,
"eve" => 10,
"don" => 100,
"gim" => 100,
"alex" => 1000,
"alec" => 1000
);
Въпросът, чийто отговор се надявам да намеря с ваша помощ, е как да сортирам тези елементи от масива, които са с еднакви стойности, за да бъдат техните ключове подредени по азбучен ред, В конкретния пример това означава да се разменят местата на първите два елемента, както и на последните два.Всъщност трябва да се сортира не целия масив наведнъж, а на отделни части. Струва ми се, че точно това е тънкостта, която ме затруднява.
Виж тук https://www.w3schools.com/php/php_arrays_sort.asp
ksort() според мен е отговора.