PHP7이므로 개발자는 기능 정의에서 매개 변수 유형과 리턴 값을 지정하여 입력을 수동으로 검증 할 필요가 줄어 듭니다. 이 구문은 코드의 명확성을 향상시키고 컴파일 단계에서 공통 유형 오류를 동시에 캡처하여 프로그램을보다 강력하게 만듭니다.
이전 버전에서 개발자는 기능 내에서 매개 변수 유형 자체를 확인해야했습니다. PHP7은 기능 서명에서 매개 변수 유형을 선언 하여이 프로세스를 단순화합니다. 예는 다음과 같습니다.
function calculateTotal(int $price, int $quantity): int {
return $price * $quantity;
}
$total = calculateTotal(10, 5);
echo "Total: $total";
위의 코드에서 $ 가격 및 $ 수량은 정수 유형으로 명시 적으로 선언됩니다. 전달 된 매개 변수가 유형과 일치하지 않으면 프로그램에 직접 오류가 발생합니다. 이 접근법은 중복 유형 검사를 줄일뿐만 아니라 함수를 한눈에 분명하게 사용합니다.
PHP7은 매개 변수 외에도 함수가 정의 될 때 리턴 값 유형을 지정할 수 있으므로 개발자가 기능의 예상 출력을 이해하도록 도와줍니다. 아래 그림과 같이 :
function isEven(int $number): bool {
return $number % 2 == 0;
}
$result = isEven(6);
if ($result) {
echo "The number is even";
} else {
echo "The number is odd";
}
반환 유형의 선언은 발신자가 함수를 사용할 때 반환되는 값 유형에 대해 명확하게 할 수 있으므로 논리적 오류를 피하고 혼동을 피할 수 있습니다.
PHP7은 파라미터 또는 반환 값이 NULL 일 수 있음을 나타 내기 위해 물음표 ( ? )를 추가하는 것을 지원합니다. 데이터베이스 쿼리, 인터페이스 반환 등과 같은 불확실한 값을 처리 할 때 특히 유용합니다.
function getUser(string $username): ?array {
// 데이터베이스의 쿼리 사용자 정보,존재하지 않으면 반환하십시오null
$user = getUserFromDatabase($username);
return $user ?: null;
}
$user = getUser("john");
if ($user) {
echo "Username: {$user['username']}";
} else {
echo "User not found";
}
무효 유형을 사용함으로써 함수의 동작 경계가 명확 해지고 발신자는 그에 따라 해당 널 값을 만들 수 있습니다.
PHP7의 유형 선언 메커니즘은 코드 가독성을 향상시키고 오류 점검 기능을 향상시키는 데 훌륭하게 수행됩니다. 매개 변수 및 반환 값에 대한 데이터 유형을 명시 적으로 설정함으로써 개발 효율성을 향상시킬뿐만 아니라보다 신뢰할 수 있고 유지 보수가 쉬운 시스템을 구축하는 데 도움이됩니다. 간단한 도구 기능이든 큰 프로젝트 아키텍처이든 유형 선언을 소개하는 것이 좋습니다.