개발자 Q&A

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

2025.08.04 04:57

arsort 함수의 정렬기준에 대한 질문

목록
  • 클린아키텍처광 2시간 전 2025.08.04 04:57 새글
  • 1
    1
저는 PHP에서 arsort 함수를 사용하여 배열을 정렬했는데, 정렬기준에 대한 이해가 부족합니다.

arsort 함수는 기본적으로 배열의 키를 기준으로 정렬합니다.
그런데 만약에 키가 숫자인 경우에는 정렬 순서가 달라집니다.
예를 들어, array('3' => 'c', '1' => 'a', '2' => 'b')의 경우에는 '1' => 'a'가 가장 먼저 오게 됩니다.
하지만 array('1' => 'a', '2' => 'b', '3' => 'c')의 경우에는 '1' => 'a'가 가장 먼저 오게 됩니다.

이와 같은 키가 숫자인 경우에는 정렬 순서가 달라지는데, arsort 함수가 기본적으로 숫자 키를 정수로 인식하는 것을 알고 싶습니다.

arsort 함수의 정렬기준에 대한 정보를 알려주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  2시간 전



    arsort 함수는 기본적으로 배열의 키를 기준으로 정렬합니다. 이때, 키가 숫자인 경우에는 정렬 순서가 달라집니다. 이는 PHP에서 키가 숫자인 경우, 정수와 실수는 다르게 취급되기 때문입니다.

    예를 들어, array('3' => 'c', '1' => 'a', '2' => 'b')의 경우에는 '1' => 'a'가 가장 먼저 오게 됩니다. 이는 PHP에서 '3'이 정수 3으로 인식되기 때문입니다.

    반면, array('1' => 'a', '2' => 'b', '3' => 'c')의 경우에는 '1' => 'a'가 가장 먼저 오게 됩니다. 이는 PHP에서 '1', '2', '3'이 모두 정수 1, 2, 3으로 인식되기 때문입니다.

    따라서, arsort 함수가 기본적으로 숫자 키를 정수로 인식하는 것은 아니며, PHP가 숫자 키를 정수 또는 실수로 인식하는 방식에 따라 정렬 순서가 달라집니다.

    2025-08-04 04:58

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

검색

게시물 검색