gettype()
함수의 정의와 사용법
gettype()
함수는
인수로 전달된 값의 데이터 타입을 문자열로 반환합니다.
이 함수를 사용하면 변수의 데이터 타입을 확인하는데 매우 유용합니다.
settype()
함수는 인수로 전달된 변수를 지정된 데이터 타입으로 설정합니다.
gettype()
함수의 형식은 다음과 같습니다.
구문
매개변수
$value |
데이터 타입을 확인할 변수 |
---|
$value
: 데이터 타입을 확인할 변수
반환 값
변수의 데이터 타입을 문자열로 반환합니다. 반환될 수 있는 데이터 형식의 목록은 다음과 같습니다.
위에 나열되어 있는 것들은 gettype()
함수가 반환할 수 있는 가능한 문자열 값들의 목록입니다. 이 목록을 토대로 변수의 데이터 타입을 확인할 수 있습니다.
'boolean'
'boolean'
데이터 타입은
두 가지 값 중 하나인 true
(참) 또는 false
(거짓)만을 나타내는 데이터 타입입니다. 주로 조건문과 논리 연산에서 사용됩니다.
다음과 같은 예제를 통해 이해할 수 있습니다.
'boolean'
데이터 타입을 체크할 때는 is_bool()
함수를 사용하는 것이 좋습니다.
is_bool()
함수는 'boolean'
데이터 타입에만 적용되므로, gettype()
함수보다 'boolean'
데이터 타입을 체크하는 하는데 있어서 더 명시적이고 안전합니다.
is_bool()
함수는
변수의 데이터 타입을 검사하고 해당 데이터 타입이 부울(boolean)인 경우 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
'integer'
'integer'
데이터 타입은
정수 데이터를 나타내는 데이터 타입입니다. 이것은 양의 정수, 음의 정수, 또는 0을 포함하는 모든 정수 값을 나타냅니다.
다음과 같은 예제를 통해 이해할 수 있습니다.
'integer'
데이터 타입을 체크할 때는 is_int()
함수를 사용하는 것이 좋습니다.
is_int()
함수는 'integer'
데이터 타입에만 적용되므로, gettype()
함수보다 'integer'
데이터 타입을 체크하는 하는데 있어서 더 명시적이고 안전합니다.
is_int()
함수는
변수의 데이터 타입을 검사하고 해당 데이터 타입이 정수인 경우 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
'double'
'double'
데이터 타입은
부동소수점 숫자를 나타내는 데이터 타입입니다. 부동소수점 숫자는 소수점을 가진 숫자로, 정수와 달리 소수 부분을 포함합니다.
다음과 같은 예제를 통해 이해할 수 있습니다.
'double'
데이터 타입을 체크할 때는 is_float()
함수를 사용하는 것이 좋습니다.
is_float()
함수는 'double'
데이터 타입에만 적용되므로, gettype()
함수보다 'double'
데이터 타입을 체크하는 하는데 있어서 더 명시적이고 안전합니다.
is_float()
함수는
변수의 데이터 타입을 검사하고 해당 데이터 타입이 부동소수점 숫자인 경우 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
'string'
'string'
데이터 타입은
문자열을 나타내는 데이터 타입입니다. 문자열은 작은따옴표(''
)나 큰따옴표(""
)로 둘러싸여 있어야 합니다.
다음과 같은 예제를 통해 이해할 수 있습니다.
'string'
데이터 타입을 체크할 때는 is_string()
함수를 사용하는 것이 좋습니다.
is_string()
함수는 'string'
데이터 타입에만 적용되므로, gettype()
함수보다 'string'
데이터 타입을 체크하는 하는데 있어서 더 명시적이고 안전합니다.
is_string()
함수는
변수의 데이터 타입을 검사하고 해당 데이터 타입이 문자열인 경우 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
'array'
'array'
데이터 타입은
배열을 나타내는 데이터 타입입니다. PHP의 배열은 숫자 인덱스 배열(일반 배열)과 연관 배열 두 가지 타입이 있습니다.
다음과 같은 예제를 통해 이해할 수 있습니다.
'array'
데이터 타입을 체크할 때는 is_array()
함수를 사용하는 것이 좋습니다.
is_array()
함수는 'array'
데이터 타입에만 적용되므로, gettype()
함수보다 'array'
데이터 타입을 체크하는 하는데 있어서 더 명시적이고 안전합니다.
is_array()
함수는
변수의 데이터 타입을 검사하고 해당 데이터 타입이 배열인 경우 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
'object'
'object'
데이터 타입은
객체을 나타내는 데이터 타입입니다. PHP에서 객체는 클래스로부터 생성되며, 클래스는 객체의 속성과 메서드를 정의합니다. 객체는 이러한 클래스의 인스턴스로서 데이터와 동작을 함께 포함하고 있습니다.
다음과 같은 예제를 통해 이해할 수 있습니다.
'object'
데이터 타입을 체크할 때는 is_object()
함수를 사용하는 것이 좋습니다.
is_object()
함수는 'object'
데이터 타입에만 적용되므로, gettype()
함수보다 'object'
데이터 타입을 체크하는 하는데 있어서 더 명시적이고 안전합니다.
is_object()
함수는
변수의 데이터 타입을 검사하고 해당 데이터 타입이 객체인 경우 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
'resource'
'resource'
데이터 타입은
외부 리소스와 상호작용할 때 사용되는 데이터 타입입니다. 예를 들어, 파일, 데이터베이스 연결, 이미지, 네트워크 연결 등이 리소스에 해당합니다.
다음과 같은 예제를 통해 이해할 수 있습니다.
'resource'
데이터 타입을 체크할 때는 is_resource()
함수를 사용하는 것이 좋습니다.
is_resource()
함수는 'resource'
데이터 타입에만 적용되므로, gettype()
함수보다 'resource'
데이터 타입을 체크하는 하는데 있어서 더 명시적이고 안전합니다.
is_object()
함수는
변수의 데이터 타입을 검사하고 해당 데이터 타입이 리소스인 경우 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
'resource (closed)'
'resource (closed)'
데이터 타입은
외부 리소스와 상호작용하는 동안 사용되었던 리소스가 이제 닫혔음을 나타내는 데이터 타입입니다. 이 데이터 타입은 리소스가 더 이상 활성화되지 않고 사용할 수 없다는 것을 나타냅니다.
다음과 같은 예제를 통해 이해할 수 있습니다.
주의하세요!
'resource (closed)'
데이터 타입을 확인할 때 is_resource()
함수를 사용하지 마세요!
is_resource()
함수는 'resource'
타입의 변수인지를 확인하는 함수이기 때문에, 'resource (closed)'
데이터 타입은 is_resource()
함수로 체크되지 않습니다. false
입니다.
'resource (closed)'
데이터 타입을 확인하려면 gettype()
함수를 사용하여 변수의 데이터 타입을 확인하는 것이 명확하다고 할 수 있습니다.
'NULL'
'NULL'
데이터 타입은
변수가 정의되지 않거나 변수에 값이 할당되지 않았음을 나타내는 데이터 타입입니다. 변수에 명시적으로 null
값을 할당했을 때에도 'NULL'
데이터 타입을 갖게 됩니다.
다음과 같은 예제를 통해 이해할 수 있습니다.
'NULL'
데이터 타입을 체크할 때는 is_null()
함수를 사용하는 것이 좋습니다.
is_null()
함수는 'NULL'
데이터 타입에만 적용되므로, gettype()
함수보다 'NULL'
데이터 타입을 체크하는 하는데 있어서 더 명시적이고 안전합니다.
is_null()
함수는
주어진 변수가 null
인 경우 true
를 반환하고, 그렇지 않은 경우 false
를 반환합니다.
'unknown type'
알아두세요!
PHP 7.2.0 이전 버전에서는 gettype()
함수가 닫힌 리소스를 확인할 때 'unknown type'
이라는 값을 반환했습니다. 이것은 닫힌 리소스에 대한 정보를 불분명하게 표시하는 문제가 있었습니다. PHP 7.2.0 이후 버전에서는 이러한 문제를 개선하기 위해 gettype()
함수가 닫힌 리소스를 확인할 때 'resource (closed)'
라는 값을 반환하도록 변경되었습니다. 이를 통해 개발자들은 리소스 변수가 닫힌 상태임을 더 명확하게 알 수 있게 되었습니다.
PHP 7.2.0 버전 이후에는 PHP에서 'unknown type'
값은 더 이상 존재하지 않습니다.
PHP 버전
PHP 4+
변경 사항
PHP 7.2.0 버전 이후에는 PHP에서 'unknown type'
값은 더 이상 존재하지 않습니다.
참고문헌
같이 보기
- PHP is_bool() 함수 - 변수의 부울(boolean) 타입 확인
- PHP is_int() 함수 - 변수의 정수(integer) 타입 확인
- PHP is_float() 함수 - 변수의 부동 소수점 숫자(float) 타입 확인
- PHP is_numeric() 함수 - 변수의 값이 숫자 또는 숫자 문자열인지 확인
- PHP is_string() 함수 - 변수의 문자열(string) 타입 확인
- PHP is_array() 함수 - 변수의 배열(array) 타입 확인
- PHP is_object() 함수 - 변수의 객체(object) 타입 확인
- PHP is_resource() 함수 - 변수의 리소스(resource) 타입 확인
- PHP is_null() 함수 - 변수의 NULL 타입 확인
- PHP ctype_digit() 함수 - 문자열이 모두 숫자인지 확인