Loading...
miro7975 avatar miro7975 2 Точки

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  
                                                        ); 

Въпросът, чийто отговор се надявам да намеря с ваша помощ, е как да сортирам  тези елементи от масива, които са с еднакви стойности, за да бъдат техните ключове подредени по азбучен ред, В конкретния пример това означава да се разменят местата на първите два елемента, както и на последните два.Всъщност трябва да се сортира не целия масив наведнъж, а на отделни части. Струва ми се, че точно това е тънкостта, която ме затруднява.

 

Тагове:
0
PHP Fundamentals
dvdty avatar dvdty 497 Точки
Best Answer

Малко е трудно да се достъпят елементите от ключа по този начин. Промених малко структурата:

https://pastebin.com/Zk3bqPpL

0
vkutov avatar vkutov 57 Точки

Виж тук https://www.w3schools.com/php/php_arrays_sort.asp   

ksort() според мен е отговора. 

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.