PHP의 표준 라이브러리 함수에서 Array_fill ()은 작지만 매우 실용적인 도구입니다. 인터뷰 중에 후보자들은 종종이 겉보기에 간단하지만 독창적 인 기능에 익숙한 지 여부를 조사합니다. Array_fill () 의 사용을 이해하고 마스터하면 실제 개발의 효율성을 향상시킬 수있을뿐만 아니라 인터뷰에서 배열 처리 능력을 보여줍니다.
Array_Fill ()은 지정된 값으로 배열을 채우는 데 사용됩니다. 기능 프로토 타입은 다음과 같습니다.
array array_fill ( int $start_index , int $count , mixed $value )
$ start_index : 시작 색인
$ count : 요소 수
$ 값 : 충전에 사용되는 값
예:
$array = array_fill(0, 5, 'PHP');
print_r($array);
산출:
Array
(
[0] => PHP
[1] => PHP
[2] => PHP
[3] => PHP
[4] => PHP
)
이 기능은 기본값이있는 배열을 빠르게 만들어야 할 때 매우 편리합니다.
예를 들어, 허위 상태로 부울 배열 세트를 초기화하려고합니다.
$status = array_fill(0, 10, false);
다음과 같은 초기화 작업에 적합합니다. 사용자 투표 상태, 권한 확인 표시, 질문 응답 상태 등
때로는 외부 데이터를 처리하고 일부 필드 값이 누락되었지만 통합 데이터 형식을 유지하려고합니다. 현재 Array_Fill ()을 사용하여 장소를 점유 할 수 있습니다.
$placeholders = array_fill(0, 3, 'N/A');
이 글은 CSV를 내보내거나 통합 데이터 테이블을 구축 할 때 매우 일반적입니다.
설문지에 5 개의 질문이 있고 각 질문의 기본값이 0 포인트라고 가정 해 봅시다. 다음과 같이 쓸 수 있습니다.
$scores = array_fill(1, 5, 0); // 제목 번호에서 1 시작
다른 배열 함수와 결합 된 Array_fill ()은 보다 복잡한 논리를 구현할 수 있습니다.
array_combine () 가있는 조인트 :
필드 이름 세트가있는 경우 각 필드에 기본값을 할당하려고합니다.
$fields = ['name', 'email', 'phone'];
$defaults = array_fill(0, count($fields), '');
$data = array_combine($fields, $defaults);
산출:
Array
(
[name] =>
[email] =>
[phone] =>
)
이는 형식 기본값, 인터페이스 필드 형식을 처리하는 훌륭한 방법입니다.
Array_Fill ()은 부정적인 인덱싱을 허용하며, 이는 특정 논리에 유용하지만 신중한 처리가 필요합니다.
$negArray = array_fill(-3, 3, 'X');
산출:
Array
(
[-3] => X
[-2] => X
[-1] => X
)
인터뷰 중에 면접관은 다음과 같은 질문을 할 수 있습니다.
Array_Fill ()을 사용하여 1에서 100 사이의 인덱스가있는 배열을 빠르게 생성하고 최종 배열의 키가 연속 정수 여야합니다.
답변:
$data = array_fill(1, 100, 0);
고급 요구 사항은 다음과 같습니다. 모든 키를 'Item_1' 에서 'item_100' 과 같은 문자열 형식에 매핑하십시오.
$keys = array_map(fn($n) => "item_$n", range(1, 100));
$values = array_fill(0, 100, 0);
$result = array_combine($keys, $values);
포스트 인터페이스를 작성하고 https://api.m66.net/data 에 10 개의 사용자 기본 정보 배열을 제출한다고 가정하면 각 사용자 데이터 형식은 다음과 같습니다.
[
'name' => '',
'email' => '',
'status' => 'inactive'
]
우리는이 방법을 쓸 수 있습니다.
$defaultUser = [
'name' => '',
'email' => '',
'status' => 'inactive'
];
$users = array_fill(0, 10, $defaultUser);
$payload = json_encode(['users' => $users]);
$ch = curl_init('https://api.m66.net/data');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
$response = curl_exec($ch);
curl_close($ch);
이 코드는 Array_Fill () 이 실제 비즈니스 시나리오에서 구조화 된 데이터를 구축하는 프로세스를 단순화하는 방법을 보여줍니다.
array_fill () 의 사용을 마스터하면 코드가 더 간결하고 직관적 일 수 있습니다. 복잡하지는 않지만 종종 "면접관의 테스트 포인트"를 숨 깁니다. 다음에 초기화 및 기본 값 충전이 필요하다고 생각하면 그 존재를 잊지 마십시오. Array_fill ()을 우아하게 사용하는 것은 코드 레벨의 플러스 일뿐 만 아니라 인터뷰에서 눈에 띄는 세부 사항의 하이라이트이기도합니다.