숫자 값과 키를 기준으로 배열 정렬
프로그래밍에서 특정 기준에 따라 연관 배열을 정렬해야 하는 상황이 발생합니다. 그러한 시나리오 중 하나는 숫자 값을 기준으로 배열을 정렬한 다음 키를 기준으로 정렬하는 것입니다.
태그 발생을 나타내는 문자열 키와 숫자 값을 포함하는 배열이 있다고 가정합니다.
$arrTags = [ 'mango' => 2, 'orange' => 4, 'apple' => 2, 'banana' => 3 ];
우리의 목표는 다음을 표시하는 것입니다. 목록에서 발생 빈도가 가장 높은 태그를 먼저 정렬하고, 발생 횟수가 동일할 경우 태그 이름을 알파벳순으로 정렬합니다. 그 결과는 다음과 같습니다.
orange (4) banana (3) apple (2) mango (2)
arsort() 함수는 처음에 값을 정렬할 수 있지만 여러 값이 동일하면 키의 알파벳 순서를 유지하지 못합니다.
제안된 대로 Scott Saunders의 설명에 따르면 array_keys() 및 array_values() 함수를 활용하여 이러한 제한을 극복할 수 있습니다.
array_multisort(array_values($arrTags), SORT_DESC, array_keys($arrTags), SORT_ASC, $arrTags);
이 함수 조합을 사용하면 배열의 키와 값을 직접 조작하여 궁극적으로 원하는 정렬을 달성할 수 있습니다. 행동. 값을 내림차순으로 정렬한 다음 키를 오름차순으로 정렬하면 원하는 출력을 얻을 수 있습니다.
위 내용은 숫자 값과 키를 기준으로 연관 배열을 알파벳순으로 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!