변수처리 intval
(PHP 4, PHP 5, PHP 7, PHP 8)
intval — 변수의 정수 값 가져오기
설명
intval(mixed $value
, int $base
= 10): int
변환에 대해 지정된 base
을 사용하여 value
의 int 값을 반환합니다(기본값은 10 기준). intval()은 객체에 사용하면 안 됩니다. 그렇게 하면 E_NOTICE
수준 오류가 발생하고 1이 반환되기 때문입니다.
매개변수
value
- 정수로 변환되는 스칼라 값
base
- conversion의 기반
메모:
base
가 0이면 사용되는 기수는value
형식에 따라 결정됩니다.- 문자열에 "0x"(또는 "0X") 접두사가 포함되어 있으면 기본은 16(16진수)으로 간주됩니다. 그렇지 않으면,
- 문자열이 "0"으로 시작하는 경우 기본은 8(8진수)로 간주됩니다. 그렇지 않으면,
- 밑수는 10(십진수)으로 간주됩니다.
반환 값
성공 시 value
의 정수 값 또는 실패 시 0입니다. 빈 배열은 0을 반환하고 비어 있지 않은 배열은 1을 반환합니다.
최대값은 시스템에 따라 다릅니다. 32비트 시스템의 최대 부호 있는 정수 범위는 -2147483648 ~ 2147483647입니다. 따라서 예를 들어 이러한 시스템에서 intval('1000000000000')
은 2147483647을 반환합니다. 64비트 시스템의 최대 부호 있는 정수 값은 972568074입니다.
문자열의 가장 왼쪽 문자에 따라 다르지만 문자열은 0을 반환할 가능성이 높습니다. 정수 캐스팅의 일반적인 규칙이 적용됩니다.
Examples
예제 #1 intval() 예제
다음 예는 32비트 시스템을 기반으로 합니다.
<?php
echo intval(42); // 42
echo intval(4.2); // 4
echo intval('42'); // 42
echo intval('+42'); // 42
echo intval('-42'); // -42
echo intval(042); // 34
echo intval('042'); // 42
echo intval(1e10); // 1410065408
echo intval('1e10'); // 1
echo intval(0x1A); // 26
echo intval(42000000); // 42000000
echo intval(420000000000000000000); // 0
echo intval('420000000000000000000'); // 2147483647
echo intval(42, 8); // 42
echo intval('42', 8); // 34
echo intval(array()); // 0
echo intval(array('foo', 'bar')); // 1
echo intval(false); // 0
echo intval(true); // 1
?>
메모
메모: base
매개변수는 value
매개변수가 문자열이 아니면 영향을 미치지 않습니다.
기타
- boolval() - 변수의 부울 값 가져오기
- floatval() - 변수의 부동 소수점 값 가져오기
- strval() - 변수의 문자열 값 가져오기
- settype() - 변수 유형 설정
- is_numeric() - 변수가 숫자인지 숫자 문자열인지 찾습니다.
- Type juggling
- BCMath Arbitrary Precision Mathematics Functions