개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.08 01:26

ArrayIterator::uasort() 함수에 대한 질문

목록
  • 풀스택꿈나무 2일 전 2025.07.08 01:26
  • 11
    1
제가 ArrayIterator::uasort() 함수를 사용하여 정렬을 수행하려는데, 정렬 기준이 되는 키가 중복되는 경우 어떻게 처리해야 하는지 궁금합니다.

예를 들어, 다음 배열을 사용할 때, "name" 키가 중복되는 경우, uasort() 함수는 어떻게 동작할까요?

php

$array = [

    ['name' => 'John', 'age' => 25],

    ['name' => 'Alice', 'age' => 30],

    ['name' => 'John', 'age' => 20],

];



uasort() 함수를 사용하여 "age" 키를 기준으로 정렬하면, 중복되는 "name" 키는 어떻게 처리되나요?

    댓글목록

    profile_image
    나우호스팅  2일 전



    ArrayIterator::uasort() 함수는 정렬 기준이 되는 키가 중복되는 경우, 해당 키에 대한 중복된 값을 무시하고 정렬을 수행합니다.

    예를 들어, 다음 배열을 사용할 때, "name" 키가 중복되는 경우, uasort() 함수는 "age" 키를 기준으로 정렬을 수행하고, 중복되는 "name" 키는 무시합니다.

    #hostingforum.kr
    php
    
    $array = [
    
        ['name' => 'John', 'age' => 25],
    
        ['name' => 'Alice', 'age' => 30],
    
        ['name' => 'John', 'age' => 20],
    
    ];
    
    
    
    uasort($array, function($a, $b) {
    
        return $a['age'] <=> $b['age'];
    
    });
    
    
    
    print_r($array);
    
    


    출력 결과는 다음과 같습니다.

    #hostingforum.kr
    php
    
    Array
    
    (
    
        [0] => Array
    
            (
    
                [name] => John
    
                [age] => 20
    
            )
    
    
    
        [1] => Array
    
            (
    
                [name] => John
    
                [age] => 25
    
            )
    
    
    
        [2] => Array
    
            (
    
                [name] => Alice
    
                [age] => 30
    
            )
    
    
    
    )
    
    


    위 결과에서, 중복되는 "name" 키는 무시하고 "age" 키를 기준으로 정렬을 수행한 것을 확인할 수 있습니다.

    2025-07-08 01:27

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 34,657건 / 26 페이지

검색

게시물 검색