PHP 버전
4+
/* 정수(integer) 타입 */
var_dump(is_int(1));         // bool(true)
var_dump(is_int(0));         // bool(true)
var_dump(is_int(-10));       // bool(true)

/* 부동 소수점 숫자(float) */
var_dump(is_int(1.0));       // bool(false)
var_dump(is_int(0.0));       // bool(false)
var_dump(is_int(3.14));      // bool(false)

/* 문자열 */
var_dump(is_int('1'));       // bool(false)
var_dump(is_int('0'));       // bool(false)
var_dump(is_int('10'));      // bool(false)

/* 숫자 연산 결과 */
var_dump(is_int(1 + 1));     // bool(true)
var_dump(is_int(10 / 2));    // bool(true)
var_dump(is_int(9 / 2));     // bool(false)

/* 타입 캐스팅(Type Casting, 형 변환) */
var_dump(is_int((int) '1')); // bool(true)
var_dump(is_int((int) 1.9)); // bool(true)
is_int(mixed $value): bool
$num = '10';

var_dump(is_int($num)); // bool(false)
$num_1 = 10.5;
$num_2 = 10.0;

var_dump(is_int($num_1)); // bool(false)
var_dump(is_int($num_2)); // bool(false)
$num_1 = 0123;
$num_2 = -0123;
$num_3 = 000;

var_dump(is_int($num_1)); // bool(true)
var_dump(is_int($num_2)); // bool(true)
var_dump(is_int($num_3)); // bool(true)
$a = '2';

if (is_int($a)) {
    echo '변수 a는 정수 타입입니다.';
} else {
    echo '변수 a는 정수 타입이 아닙니다.';
}

// 출력: '변수 a는 정수 타입이 아닙니다.'
$value = $db->query('SELECT value FROM table WHERE id = 1')->fetchColumn();

if (!is_int($value)) {
	echo '데이터 타입이 올바르지 않습니다.';
	exit;
}

// ... 나머지 처리
$user_input = $_POST['user_input'];

if (is_int($user_input)) {
    // 유효한 정수 입력 처리
} else {
    // 유효하지 않은 입력에 대한 처리
}
$num1 = 10;
$num2 = 20;

if (!is_int($num1) || !is_int($num2)) {
  echo '덧셈은 정수에 대해서만 수행 가능합니다.';
  exit;
}

$sum = $num1 + $num2;

echo "두 수의 합은 {$sum}입니다.";
// 출력: '두 수의 합은 30입니다.'