PHP의 floor() 함수는 숫자의 소수점 아래를 버리고 가장 가까운 정수로 내림 처리하는 함수입니다. 예를 들어 7.8은 7이 되고, 음수인 경우에는 -4.2가 -5가 됩니다. 즉, 항상 음의 무한대 방향으로 내림한다는 점이 특징입니다.
문법(Syntax)
floor(num)
매개변수(Parameters)
num − 내림 처리할 숫자를 입력합니다.
반환값(Return)
floor() 함수는 소수점을 버려 가장 가까운 정수로 내림한 값을 반환합니다. 참고로 PHP에서 이 함수는 정수 범위를 초과할 수 있기 때문에 float 타입으로 값을 반환합니다.
예제 1
<?php
echo(floor(0.10) . "<\n>" );
echo(floor(0.55));
?>
출력 결과
0
0
0.10과 0.55 모두 소수점이 버려져 0으로 내림된 것을 확인할 수 있습니다.
예제 2
<?php
echo(floor(9));
?>
출력 결과
9
이미 정수인 값에 floor() 함수를 적용하면 그대로 동일한 값이 반환됩니다.
예제 3
<?php
echo(floor(7.8) . "\n" );
echo(floor(-4.2));
?>
출력 결과
7
-5
양수인 경우 단순히 소수점이 잘리지만, 음수에서는 주의해야 합니다. -4.2는 반올림하면 -4가 되지만, floor()는 항상 더 작은 쪽 정수로 내림하므로 -5가 반환됩니다.
참고: ceil() 함수와의 차이
floor()가 무조건 내림이라면, ceil() 함수는 반대로 소수점을 올려 가장 가까운 정수로 올림 처리합니다. 예를 들어 ceil(7.1)은 8이 됩니다. 상황에 맞게 두 함수를 구분하여 사용하면 됩니다.