PHP 버전
4+
/* 부동 소수점 숫자 */
var_dump(is_float(3.14));   // bool(true)
var_dump(is_float(-10.5));  // bool(true)
var_dump(is_float(0.0));    // bool(true)

/* 정수 */
var_dump(is_float(1));      // bool(false)
var_dump(is_float(0));      // bool(false)
var_dump(is_float(-10));    // bool(false)

/* 문자열 */
var_dump(is_float('3.14')); // bool(false)
var_dump(is_float('0.0'));  // bool(false)

/* 숫자 연산 결과 */
var_dump(is_float(1.0 + 2)); // bool(true)
var_dump(is_float(3 / 2));   // bool(true)
var_dump(is_float(5 + 2));   // bool(false)

/* 부동소수점 숫자의 산출 연산 결과는 float 타입으로 처리 */
var_dump(1 + 1.0);             // float(2)
var_dump(is_float(1 + 1.0));   // bool(true)
var_dump(0.5 + 0.5);           // float(1)
var_dump(is_float(0.5 + 0.5)); // bool(true)
var_dump(2 * 3.5);             // float(7)
var_dump(is_float(2 * 3.5));   // bool(true)

/* 타입 캐스팅(Type Casting, 형 변환) */
var_dump(is_float((float) '3.14')); // bool(true)
var_dump(is_float((float) 1));     // bool(true)
is_float(mixed $value): bool
$float = '10.5';

var_dump(is_float($float)); // bool(false)
$float = 10.0;

var_dump(is_float($float)); // bool(true)
$result = 0.5 + 0.5; // 1이 예상됨

var_dump($result); // float(1) => 정수(int) 타입 아님 주의!
var_dump(is_float($result)); // bool(true)
$float_result = 6.0 / 2;

var_dump($float_result); // float(3)
$value = 3.14;

if (is_float($value)) {
    echo '이 값은 부동소수점 숫자입니다.';
} else {
    echo '이 값은 부동소수점 숫자가 아닙니다.';
}

// 출력: '이 값은 부동소수점 숫자입니다.'
$number = 3.1415926535;

if (is_float($number)) {
    echo number_format($number, 2); // 출력: 3.14
} else {
	echo $number;
}