PHP 인터페이스 요청을 개발할 때는 종종 들어오는 매개 변수를 처리하고 특정 매개 변수에 대한 기본값을 설정해야합니다. 많은 매개 변수가있는 경우 배열을 수동으로 초기화하면 중복되어 오류가 발생하기 쉽습니다. 현재 Array_Fill_Keys ()는 매우 효율적인 도구가됩니다.
이 기사 에서는 API 요청 매개 변수의 기본 배열을 빠르게 초기화하여 코드의 유지 관리 및 선명도를 향상시키는 방법을 소개합니다.
Array_Fill_Keys () 는 PHP의 내장 함수로, 새로운 배열을 생성하기 위해 배열 키를 통합 된 값으로 짝을 이루는 기능입니다.
문법:
array_fill_keys(array $keys, mixed $value): array
$ 키 : 새 배열의 키 이름으로 사용되는 배열.
$ 값 : 모든 키의 기본값.
기사 데이터를 쿼리하기위한 인터페이스를 개발하고 있으며 클라이언트가 다음 매개 변수를 전달할 수 있다고 상상해보십시오.
페이지 : 현재 페이지 번호
한계 : 페이지 당 번호
정렬 : 정렬 필드
주문 : 정렬 방향 (ASC 또는 DESC)
사용자가 이러한 매개 변수를 전달하지 않아 시스템 오류를 피하기 위해 배경은 기본 매개 변수 배열을 설정해야합니다. Array_Fill_Keys ()를 사용 하여이 프로세스를 단순화 할 수 있습니다.
<?php
// 매개 변수 키 이름을 정의합니다
$paramKeys = ['page', 'limit', 'sort', 'order'];
// 사용 array_fill_keys 기본값을 초기화하십시오
$defaultParams = array_fill_keys($paramKeys, null);
// 기본값을 수동으로 덮어 씁니다(필요한 경우)
$defaultParams['page'] = 1;
$defaultParams['limit'] = 10;
$defaultParams['sort'] = 'created_at';
$defaultParams['order'] = 'desc';
// 클라이언트의 들어오는 매개 변수를 얻으려면 시뮬레이션하십시오
$userInput = [
'page' => 2,
'order' => 'asc'
];
// 기본값으로 사용자 입력을 병합하십시오(사용자 입력 우선 순위)
$requestParams = array_merge($defaultParams, $userInput);
// 최종 매개 변수 배열을 출력하십시오
print_r($requestParams);
Array
(
[page] => 2
[limit] => 10
[sort] => created_at
[order] => asc
)
보시다시피, Array_Fill_Keys ()를 사용하면 필요한 매개 변수 이름을 간단히 나열하여 수동 입력 오류의 가능성을 크게 줄여서 깨끗한 기본 매개 변수 구조를 일괄 할 수 있습니다.
이 매개 변수를 사후 요청을 통해 원격 인터페이스 https://api.m66.net/articles/list 로 보내려면 다음을 수행 할 수 있습니다.
<?php
$apiUrl = 'https://api.m66.net/articles/list';
$options = [
'http' => [
'method' => 'POST',
'header' => "Content-Type: application/x-www-form-urlencoded\r\n",
'content' => http_build_query($requestParams),
'timeout' => 10
]
];
$context = stream_context_create($options);
$result = file_get_contents($apiUrl, false, $context);
echo $result;
API 요청 매개 변수의 기본값을 초기화하기 위해 Array_Fill_Keys ()를 사용하면 간결 할뿐만 아니라 코드의 유지 관리 가능성도 향상됩니다. 인터페이스 매개 변수 목록이 변경되면 여러 수동 할당 문을 수정하지 않고 매개 변수 키 어레이 만 업데이트하면됩니다.
이것은 특히 대규모 프로젝트의 매개 변수 관리 및 구조적 통일에 적합한 실습 방식입니다.