개발자 Q&A

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

2025.07.26 05:50

array_intersect_ukey 함수에 대한 도움을 구합니다.

목록
  • 게임개발자 1일 전 2025.07.26 05:50
  • 15
    1
제가 array_intersect_ukey 함수를 사용하여 두 개의 배열의 중복된 키만 추출하려고 합니다. 그러나 이 함수를 사용할 때, 키가 중복되어도 중복된 키가 여러 번 추출되는 것을 방지하는 방법을 모르겠습니다.

예를 들어, 다음 두 개의 배열이 있다고 가정해 보겠습니다.

php

$array1 = [

    'A' => 1,

    'B' => 2,

    'C' => 3,

    'D' => 4,

    'E' => 5,

];



$array2 = [

    'B' => 6,

    'C' => 7,

    'D' => 8,

    'E' => 9,

    'F' => 10,

];



array_intersect_ukey 함수를 사용하여 두 개의 배열의 중복된 키만 추출하면 다음과 같이 됩니다.

php

$result = array_intersect_ukey($array1, $array2, function($key) {

    return $key;

});



그러나, 이 결과는 다음과 같습니다.

php

$result = [

    'B' => 2,

    'C' => 3,

    'D' => 4,

    'E' => 5,

];



이 결과에서, 키 'B', 'C', 'D', 'E'가 중복되어 중복된 키가 여러 번 추출되는 것을 방지하는 방법을 알고 싶습니다.

혹시 array_intersect_ukey 함수를 사용하여 중복된 키가 여러 번 추출되지 않게 하는 방법이 있나요?

    댓글목록

    profile_image
    나우호스팅  1일 전



    array_intersect_ukey 함수를 사용하여 중복된 키가 여러 번 추출되지 않게 하려면, 중복된 키를 제거하기 전에 중복된 키를 추출한 후, 중복된 키를 제거하는 방법을 사용할 수 있습니다.

    예를 들어, 다음 코드를 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $array1 = [
    
        'A' => 1,
    
        'B' => 2,
    
        'C' => 3,
    
        'D' => 4,
    
        'E' => 5,
    
    ];
    
    
    
    $array2 = [
    
        'B' => 6,
    
        'C' => 7,
    
        'D' => 8,
    
        'E' => 9,
    
        'F' => 10,
    
    ];
    
    
    
    // 중복된 키를 추출
    
    $intersectKeys = array_intersect_ukey($array1, $array2, function($key) {
    
        return $key;
    
    });
    
    
    
    // 중복된 키를 제거
    
    $uniqueKeys = array_unique($intersectKeys);
    
    
    
    // 중복된 키를 제거한 후의 결과
    
    $result = array_intersect_ukey($array1, $array2, function($key) use ($uniqueKeys) {
    
        return in_array($key, $uniqueKeys);
    
    });
    
    
    
    print_r($result);
    
    


    이 코드를 실행하면, 결과는 다음과 같습니다.

    #hostingforum.kr
    php
    
    Array
    
    (
    
        [B] => 2
    
        [C] => 3
    
        [D] => 4
    
        [E] => 5
    
    )
    
    


    이 결과에서, 키 'B', 'C', 'D', 'E'가 중복되어 중복된 키가 여러 번 추출되는 것을 방지했습니다.

    2025-07-26 05:51

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

검색

게시물 검색