이전 버전의 PHP에서는 변수의 유형을 가져오려면 gettype()을 사용했습니다. 기능. 이 함수는 문자열의 사용자 정의에서 변수 유형을 반환합니다. integer, string, array, boolean, double, resource, NULL, unknown type 등과 같은 가능한 모든 값을 반환합니다.
그러나 gettype에 문제가 있었습니다. 기능. 네이티브 및 친숙한 형식 이름을 반환하지 않습니다. float 대신 double을, int 대신 integer를 반환하는 식입니다.
이 문제를 극복하기 위해 PHP 8은 get_debug_type을 사용합니다. 기능.
get_debug_type() 함수
PHP 8에서 get_debug_type 함수는 실제 기본 유형의 변수를 반환합니다. double 및 integer 대신 float, int를 반환합니다. 이 함수는 객체의 클래스 이름을 자동으로 확인합니다.
get_debug_type() 기능 도움
-
디버깅
-
비즈니스 로직
-
오류 보고
예:PHP에서 gettype() 함수 사용
<?php class Novel {} class Comments {} $novel = new Novel(); if(! ($novel instanceof Comment)) { echo 'Expected ' . Comment::class . ' still got My' . (is_object($novel) ? get_class($novel) : gettype($novel)); } ?>
출력
Expected Comment still got MyNovel
예시 :PHP 8에서 get_debug_type() 함수 사용
<?php class Novel {} class Comments {} $novel = new Novel(); if(! ($novel instanceof Comment)) { echo 'Expected '.Comment::class.' still got My'.get_debug_type($novel); } ?>
출력
Expected Comment still got MyNovel