배열이 사전 정의된 배열 형태에 따라 생성되지만 형태에 의해 정의된 필수 키/항목을 모두 제공하지 않는 경우를 보고합니다.
이 검사는 배열 인스턴스화 시 필수 항목이 누락되어 런타임 문제가 발생할 수 있는 상황을 식별하여 코드 일관성을 향상하고 정의된 구조를 준수할 수 있도록 도와줍니다.
포함된 코드 스니펫:
function connect(#[ArrayShape([
'path' => 'string',
'host' => [
'name' => 'string',
'port' => 'int'
]
])] array $options = []) { };
connect(['host' => ['name' => 'localhost', 'port' => 1234]]); // 'path' 키 누락