개발자 Q&A

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

2025.05.05 00:51

array_column 함수 사용 시 배열의 키가 중복될 경우 처리 방법을 알려주세요.

목록
  • Haskell연구가 1일 전 2025.05.05 00:51
  • 5
    1
안녕하세요 선생님, array_column 함수를 사용하여 배열의 값을 추출하려고하는데요.
배열의 키가 중복될 경우 어떤 처리를 해주어야 하는지 궁금합니다.
만약 키가 중복되면 어떤 값이 추출될까요?

예를 들어, 다음과 같은 배열이 있다고 가정해 보겠습니다.

php

$data = [

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

    ['id' => 2, 'name' => 'Jane', 'age' => 30],

    ['id' => 1, 'name' => 'John', 'age' => 26],

    ['id' => 2, 'name' => 'Jane', 'age' => 31],

];



array_column 함수를 사용하여 'name' 값을 추출하려고 합니다.

php

$result = array_column($data, 'name');



만약 'id' 값도 중복되면 어떤 결과가 나올까요?

그럼 선생님, array_column 함수 사용 시 배열의 키가 중복될 경우 처리 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  1일 전



    array_column 함수는 중복된 키를 가진 배열에서 키를 기준으로 값을 추출할 때, 중복된 키에 해당하는 값을 모두 추출합니다.

    예를 들어, 다음과 같은 배열이 있다고 가정해 보겠습니다.

    #hostingforum.kr
    php
    
    $data = [
    
        ['id' => 1, 'name' => 'John', 'age' => 25],
    
        ['id' => 0, 'name' => 'Jane', 'age' => 30],
    
        ['id' => 1, 'name' => 'John', 'age' => 26],
    
        ['id' => 0, 'name' => 'Jane', 'age' => 31],
    
    ];
    
    


    array_column 함수를 사용하여 'name' 값을 추출하려고 합니다.

    #hostingforum.kr
    php
    
    $result = array_column($data, 'name');
    
    


    이 경우, 중복된 키 'name'에 해당하는 값을 모두 추출합니다. 결과는 다음과 같습니다.

    #hostingforum.kr
    php
    
    array (
    
      0 => 'John',
    
      1 => 'Jane',
    
      2 => 'John',
    
      3 => 'Jane',
    
    )
    
    


    따라서, array_column 함수를 사용할 때 중복된 키가 있는 경우, 중복된 키에 해당하는 값을 모두 추출합니다.

    중복된 키를 제거하고 싶다면, array_column 함수의 두 번째 인자로 'keep' 옵션을 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $result = array_column($data, 'name', 'id');
    
    


    이 경우, 중복된 키 'id'에 해당하는 값을 사용하여 중복된 키 'name'을 제거합니다. 결과는 다음과 같습니다.

    #hostingforum.kr
    php
    
    array (
    
      1 => 'John',
    
      0 => 'Jane',
    
    )
    
    


    또한, array_column 함수의 세 번째 인자로 'keep' 옵션을 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $result = array_column($data, 'name', 'id', 'keep' => 'last');
    
    


    이 경우, 중복된 키 'id'에 해당하는 마지막 값을 사용하여 중복된 키 'name'을 제거합니다. 결과는 다음과 같습니다.

    #hostingforum.kr
    php
    
    array (
    
      1 => 'John',
    
      0 => 'Jane',
    
    )
    
    


    또한, array_column 함수의 세 번째 인자로 'keep' 옵션을 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $result = array_column($data, 'name', 'id', 'keep' => 'first');
    
    


    이 경우, 중복된 키 'id'에 해당하는 첫 번째 값을 사용하여 중복된 키 'name'을 제거합니다. 결과는 다음과 같습니다.

    #hostingforum.kr
    php
    
    array (
    
      1 => 'John',
    
      0 => 'Jane',
    
    )
    
    

    2025-05-05 00:52

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

검색

게시물 검색