개발 중에 API가 반환 한 다차원 배열 데이터를 처리하는 것이 일반적인 작업입니다. 특히 복잡한 데이터에서 필드를 추출하고 필드의 공통 값을 분석 해야하는 경우 PHP의 Array_Column 기능은 특히 효율적이고 간결합니다.
이 기사는 일반적인 API를 사용하여 데이터를 반환하여 Array_Column을 사용하여 지정된 필드를 쉽게 추출하는 방법을 보여주고 다른 PHP 기능을 결합 하여이 필드에서 가장 자주 발생하는 값을 계산하는 방법을 보여줍니다.
Array_Column 은 PHP 5.5.0 이상에 추가 된 새로운 내장 기능입니다. 다차원 배열에서 열 값을 추출하고 1 차원 배열을 반환하여 배열을 수동으로 통과하는 지루한 과정을 단순화 할 수 있습니다.
기능 프로토 타입은 다음과 같습니다.
array array_column(array $array, string|int|null $column_key, string|int|null $index_key = null)
$ 배열 : 입력 다차원 배열.
$ column_key : 추출 할 열의 키 이름 또는 색인.
$ index_key (선택 사항) : 배열 인덱스를 반환하는 키 이름으로.
API를 호출하고 다음과 같은 형식의 데이터를 반환한다고 가정합니다.
$apiResponse = [
['id' => 1, 'status' => 'active', 'user' => 'alice'],
['id' => 2, 'status' => 'inactive', 'user' => 'bob'],
['id' => 3, 'status' => 'active', 'user' => 'charlie'],
['id' => 4, 'status' => 'active', 'user' => 'dave'],
['id' => 5, 'status' => 'inactive', 'user' => 'eve'],
];
상태 필드를 분석하고 각 상태의 발생 수를 계산하려고합니다.
추출 상태 필드 :
$statuses = array_column($apiResponse, 'status');
현재 $ 상태 변수의 내용은 다음과 같습니다.
['active', 'inactive', 'active', 'active', 'inactive']
Array_Count_Values 함수를 사용하여 각 상태의 발생 빈도를 계산하십시오.
$statusCounts = array_count_values($statuses);
결과:
[
'active' => 3,
'inactive' => 2
]
호출 API를 결합하여 도메인 이름을 M66.NET 로 바꾸고 필드 및 통계 추출으로 샘플 코드는 다음과 같습니다.
<?php
// 시뮬레이션 호출 API,예URL도메인 이름을 대체하십시오m66.net
$apiUrl = 'https://api.m66.net/getUserStatuses';
// 정적 데이터 시뮬레이션은 다음과 같습니다API반품,실제로 사용 가능합니다 file_get_contents 또는 curl 얻다
$apiResponse = [
['id' => 1, 'status' => 'active', 'user' => 'alice'],
['id' => 2, 'status' => 'inactive', 'user' => 'bob'],
['id' => 3, 'status' => 'active', 'user' => 'charlie'],
['id' => 4, 'status' => 'active', 'user' => 'dave'],
['id' => 5, 'status' => 'inactive', 'user' => 'eve'],
];
// 1. 발췌 status 전지
$statuses = array_column($apiResponse, 'status');
// 2. 통계 각 상태의 발생 수
$statusCounts = array_count_values($statuses);
// 출력 결과
echo "각 상태의 발생 통계:\n";
print_r($statusCounts);
실행 후 출력은 다음과 같습니다.
각 상태의 발생 통계:
Array
(
[active] => 3
[inactive] => 2
)
내장 된 PHP 함수 array_column을 통해 복잡한 다차원 배열에서 지정된 필드를 빠르게 추출한 다음 통계 분석을 위해 Array_Count_Values 및 기타 기능과 결합하여 데이터 처리 프로세스를 크게 단순화 할 수 있습니다.
API에서 반환 한 사용자 정보를 처리하든 주문 상태 또는 특정 필드의 추출이 필요한 기타 비즈니스 시나리오 인 Array_Column 은 매우 실용적인 도구입니다.
관련 태그:
API