현재 위치: > 최신 기사 목록> Array_Column을 사용하여 연관 배열의 지정된 키 값을 추출하십시오.

Array_Column을 사용하여 연관 배열의 지정된 키 값을 추출하십시오.

M66 2025-04-28

PHP에서 Array_Column은 다차원 배열에서 특정 열의 값을 추출하는 매우 유용한 기능입니다. 이 기능은 특히 데이터 세트에서 특정 키의 값을 필터링해야 할 때 연관 배열을 처리하는 데 매우 편리합니다.

array_column 함수의 기본 사용

array_column 함수는 세 가지 매개 변수를 수락합니다.

 array_column(array $input, mixed $column_key, mixed $index_key = null): array
  • $ 입력 : 입력 다차원 배열, 일반적으로 연관 배열.

  • $ column_key : 추출 할 열 이름 또는 열 키 (배열의 색인 일 수 있음).

  • $ index_key : 결과 배열에서 키를 지정하는 선택적 매개 변수입니다. 지정되지 않은 경우 숫자 인덱스는 기본적으로 사용됩니다.

예 1 : 배열에서 특정 키의 값을 추출합니다.

다차원 배열이 있다고 가정하면 각 요소는 ID , 이름이메일 필드를 포함하여 사용자의 관련 정보를 나타냅니다. Array_Column을 사용하여 모든 사용자의 이메일 주소를 추출 할 수 있습니다.

 <?php
$users = [
    ['id' => 1, 'name' => 'Alice', 'email' => 'alice@example.com'],
    ['id' => 2, 'name' => 'Bob', 'email' => 'bob@example.com'],
    ['id' => 3, 'name' => 'Charlie', 'email' => 'charlie@example.com']
];

$emails = array_column($users, 'email');
print_r($emails);
?>

산출:

 Array
(
    [0] => alice@example.com
    [1] => bob@example.com
    [2] => charlie@example.com
)

이 예에서는 각 사용자의 이메일 필드를 추출합니다.

예제 2 : index_key 매개 변수를 사용하여 다시 표시합니다

때로는 열을 추출 할 때 키 값을 리턴 배열의 색인으로 사용하려고합니다. 예를 들어, 사용자의 ID를 기본 숫자 인덱스 대신 배열의 키로 사용하려면 세 번째 매개 변수 $ index_key를 사용하여 다음을 지정할 수 있습니다.

 <?php
$users = [
    ['id' => 1, 'name' => 'Alice', 'email' => 'alice@example.com'],
    ['id' => 2, 'name' => 'Bob', 'email' => 'bob@example.com'],
    ['id' => 3, 'name' => 'Charlie', 'email' => 'charlie@example.com']
];

$emails = array_column($users, 'email', 'id');
print_r($emails);
?>

산출:

 Array
(
    [1] => alice@example.com
    [2] => bob@example.com
    [3] => charlie@example.com
)

이 시점에서 반환 된 배열은 숫자 인덱스가 아닌 키로 ID를 취합니다.

예 3 : 다차원 배열에서 URL을 추출하고 수정합니다

API 인터페이스에서 URL이 포함 된 데이터 배열을 얻었지만 모든 도메인 이름을 M66.net 으로 균일하게 바꿔야합니다. array_columnarray_map을 사용 하여이 요구 사항을 달성 할 수 있습니다.

 <?php
$products = [
    ['id' => 1, 'name' => 'Product A', 'url' => 'https://example.com/product-a'],
    ['id' => 2, 'name' => 'Product B', 'url' => 'https://example.com/product-b'],
    ['id' => 3, 'name' => 'Product C', 'url' => 'https://example.com/product-c']
];

// 모두 추출하십시오 URL
$urls = array_column($products, 'url');

// 바꾸다 URL 도메인 이름
$updatedUrls = array_map(function($url) {
    return preg_replace('/https:\/\/[^\/]+/', 'https://m66.net', $url);
}, $urls);

print_r($updatedUrls);
?>

산출:

 Array
(
    [0] => https://m66.net/product-a
    [1] => https://m66.net/product-b
    [2] => https://m66.net/product-c
)

Array_Mappreg_replace 함수를 통해 모든 URL 도메인 이름을 m66.net 으로 바꿉니다.

요약

  • Array_Column 함수는 다차원 배열에서 특정 열의 값을 추출 할 수 있습니다.

  • $ index_key 매개 변수를 사용하여 리턴 배열의 키 값을 지정할 수 있습니다.

  • array_mappreg_replace 와 같은 기능을 결합하면 데이터에서 URL을 쉽게 처리하고 수정할 수 있습니다.

Array_Column은 특히 복잡한 데이터 구조에서 특정 정보를 추출 해야하는 경우 연관 배열에서 데이터를보다 효율적으로 처리하는 데 도움이되는 강력한 도구입니다.

텍스트와 이전 부분 사이의 선을 나누기 :