현재 위치: > 최신 기사 목록> Array_fill_keys () 기술 및 Array_combine 교체 비교

Array_fill_keys () 기술 및 Array_combine 교체 비교

M66 2025-06-07

PHP 프로그래밍에서 Array_combine ()array_fill_keys ()는 배열을 처리 할 때 도움이 될 수있는 매우 유용한 기능입니다. 그러나 사용 시나리오와 구현 방법은 다릅니다. 이 기사는이 두 기능의 차이점을 자세히 살펴보고 일부 경우 Code 유연성 및 효율성을 향상시키기 위해 Array_combine () 대신 Array_fill_Keys () 를 사용하는 방법을 소개합니다.

1. array_combine () 함수의 개요

Array_combine () 은 새로운 연관 배열을 생성하는 PHP의 내장 함수 중 하나입니다. 이 기능에는 두 가지 매개 변수가 필요합니다.

  • : 키 이름을 포함하는 배열

  • : 값이 포함 된 배열

Array_combine ()은 어레이의 키 이름으로 키 어레이의 요소와 배열의 요소를 값으로 사용하여 새 배열을 반환합니다.

샘플 코드 :

 $keys = ['a', 'b', 'c'];
$values = [1, 2, 3];
$result = array_combine($keys, $values);

print_r($result);

산출:

 Array
(
    [a] => 1
    [b] => 2
    [c] => 3
)

이 예에서 Array_combine ()은 $ 키 어레이의 요소를 배열의 키로 사용하고 $ 값 배열의 요소를 해당 값으로 사용하여 새로운 연관 배열을 만듭니다.

2. array_fill_keys () 함수의 개요

array_fill_keys ()array_combine () 의 함수는 비슷해 보이지만 분명히 다릅니다. Array_Fill_Keys () 는 주로 주어진 키 어레이를 통해 동일한 값으로 새로운 연관 배열을 채우는 데 주로 사용됩니다. 구문은 다음과 같습니다.

 array_fill_keys(array $keys, mixed $value): array
  • : 키 이름을 포함하는 배열

  • : 각 키의 해당 값을 채우는 데 사용됩니다.

샘플 코드 :

 $keys = ['a', 'b', 'c'];
$value = 100;
$result = array_fill_keys($keys, $value);

print_r($result);

산출:

 Array
(
    [a] => 100
    [b] => 100
    [c] => 100
)

Array_combine () 과 달리 Array_Fill_Keys ()는 값 배열을 여러 키와 결합하는 대신 각 키에서 동일한 값을 채 웁니다.

3. Array_combine ()을 Array_fill_keys () 로 바꾸는 방법?

Array_combine ()을 Array_Fill_Keys () 로 바꾸려면 차이점을 이해해야합니다. Array_combine () 에는 두 개의 배열이 필요하며 하나는 키를 제공하고 다른 하나는 값을 제공합니다. Array_Fill_Keys ()는 다양한 키와 단일 값 만 있으면됩니다.

경우에 따라 키 배열이 이미 있고 모든 키를 고정 값으로 채우려는 경우 Array_combine () 대신 Array_Fill_Keys () 를 사용할 수 있습니다.

대체 사용 예제 :

[ 'a', 'b', 'c']를[1, 2, 3] 과 연결하는 배열을 만들어야한다고 가정 해 봅시다. Array_combine ()을 사용한 코드는 다음과 같습니다.

 $keys = ['a', 'b', 'c'];
$values = [1, 2, 3];
$result = array_combine($keys, $values);

그러나이 값을 일부 고정 값 (예 : 0 )으로 채워야하는 경우 Array_Fill_Keys ()를 사용할 수 있습니다.

 $keys = ['a', 'b', 'c'];
$result = array_fill_keys($keys, 0);

print_r($result);

산출:

 Array
(
    [a] => 0
    [b] => 0
    [c] => 0
)

주요 차이점 :

  • Array_combine ()은 두 개의 배열을 연관 배열로 결합하는 데 사용되며 키와 값은 다른 배열에서 나옵니다.

  • Array_Fill_Keys ()는 값이 통합 된 시나리오에 적합한 모든 지정된 키에 동일한 값을 할당하는 데 사용됩니다.

4. 사용 기술 및 예방 조치

  1. 같은 길이의 배열 : array_combine () 은 키와 값의 배열이 같은 길이를 가져야합니다. 길이가 다른 경우 경고가 발생하고 거짓이 반환됩니다.

     $keys = ['a', 'b'];
    $values = [1, 2, 3];
    $result = array_combine($keys, $values); // 이것은 잘못 될 것입니다
    
  2. array_fill_keys () 의 단순성 : 각 키에 대해 동일한 값을 설정 해야하는 경우 단일 값 배열을 준비 할 필요없이 Array_Fill_Keys ()를 사용하는 것이 더 쉽습니다.

  3. 성능 고려 사항 : 성능 측면에서 Array_Fill_Keys ()는 Array_combine () 보다 효율적일 수 있습니다. 특히 값이 동일 할 때 모든 키를 채우기 위해 하나의 값 만 제공하면됩니다.

  4. 빈 배열 처리 : 입력 배열이 비어 있으면 Array_combine ()가 False를 반환하고 Array_Fill_Keys ()는 빈 배열을 반환합니다.

5. 요약

Array_combine ()array_fill_keys ()는 유사성이있는 것처럼 보이지만 기능과 사용 시나리오가 다릅니다. 두 배열을 연관 배열로 결합 해야하는 경우 array_combine ()을 사용하는 것이 더 적절합니다. 또한 동일한 값을 여러 키에 할당해야 할 때 Array_Fill_Keys ()는 더 간단한 선택입니다.

이 두 기능의 차이점과 사용 기술을 습득하면 PHP 프로그래밍에서 더 편안해질 수 있습니다.