Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP round() 함수 완벽 가이드 – 부동 소수점 숫자 반올림 방법

정의 및 사용법

PHP의 round() 함수는 부동 소수점 숫자를 원하는 정밀도(precision) 수준까지 반올림할 때 유용하게 사용됩니다. precision 매개변수가 양수이면 소수점 이하 자리에서 반올림이 수행되고, 음수이면 소수점 위 자리에서 반올림이 발생합니다. precision의 기본값은 0입니다.

예를 들어, round(10.6)은 11을 반환하고, round(10.2)는 10을 반환합니다. 이 함수는 항상 부동 소수점(float) 숫자를 반환한다는 점에 유의하세요.

또한 round() 함수에는 mode라는 선택적 매개변수가 있으며, 아래에서 설명할 사전 정의된 상수 중 하나를 지정하여 반올림 방식을 세부적으로 제어할 수 있습니다.

구문

round(float $value, int $precision, int $mode): float

매개변수

번호매개변수 및 설명
1value
반올림할 부동 소수점 숫자입니다.
2precision
반올림할 소수 자릿수입니다. 기본값은 0이며, 양수를 지정하면 소수점 이하 자리에서 반올림되고, 음수를 지정하면 소수점 위 자리에서 반올림됩니다.
3mode
아래 사전 정의 상수 중 하나를 지정합니다.
PHP_ROUND_HALF_UP값이 정확히 절반 지점일 때 0에서 멀어지는 방향으로 반올림합니다. 따라서 1.5는 2가 되고, -1.5는 -2가 됩니다.
PHP_ROUND_HALF_DOWN값이 정확히 절반 지점일 때 0에 가까워지는 방향으로 반올림합니다. 따라서 1.5는 1이 되고, -1.5는 -1이 됩니다.
PHP_ROUND_HALF_EVEN가장 가까운 짝수 값으로 반올림합니다.
PHP_ROUND_HALF_ODD가장 가까운 홀수 값으로 반올림합니다.

반환 값

PHP round() 함수는 입력 값을 지정한 정밀도로 반올림한 결과를 float 타입으로 반환합니다.

PHP 버전

이 함수는 PHP 4.x, PHP 5.x, PHP 7.x 등 대부분의 PHP 버전에서 사용할 수 있습니다.

예제 1: 양수 precision으로 반올림

다음 예제는 양수 precision 값을 사용하여 소수점 이하 자리를 반올림하는 방법을 보여줍니다.

<?php
   $arg = 1234.567;
   echo "round(" . $arg . ") = " . round($arg) . "\n";
   echo "round(" . $arg . ",1) = " . round($arg, 1) . "\n";
   echo "round(" . $arg . ",2) = " . round($arg, 2) . "\n";
?>

출력 결과

round(1234.567) = 1235
round(1234.567,1) = 1234.6
round(1234.567,2) = 1234.57

예제 2: 음수 precision으로 반올림

다음 예제는 음수 precision 값을 사용하여 소수점 위 자리를 반올림하는 방법을 보여줍니다.

<?php
   $arg = 1234.567;
   echo "round(" . $arg . ") = " . round($arg) . "\n";
   echo "round(" . $arg . ",-1) = " . round($arg, -1) . "\n";
   echo "round(" . $arg . ",-2) = " . round($arg, -2) . "\n";
?>

출력 결과

round(1234.567) = 1235
round(1234.567,-1) = 1230
round(1234.567,-2) = 1200

예제 3: HALF_UP / HALF_DOWN 모드 사용

다음 예제는 UP과 DOWN 모드 상수를 활용해 반올림 방향을 지정하는 방법을 보여줍니다.

<?php
echo "round(3.45, HALF_UP) = " . round(3.45, 0, PHP_ROUND_HALF_UP) . "\n";
echo "round(3.75, HALF_DOWN) = " . round(3.75, 1, PHP_ROUND_HALF_DOWN) . "\n";
?>

출력 결과

round(3.45, HALF_UP) = 3
round(3.75, HALF_DOWN) = 3.7

예제 4: HALF_ODD / HALF_EVEN 모드 사용

다음 예제는 ODD와 EVEN 모드를 사용하여 홀수 또는 짝수 방향으로 반올림하는 방법을 보여줍니다.

<?php
   echo "round(3.45, HALF_ODD) = " . round(3.45, 0, PHP_ROUND_HALF_ODD) . "\n";
   echo "round(3.78, HALF_EVEN) = " . round(3.78, 0, PHP_ROUND_HALF_EVEN) . "\n";
?>

출력 결과

round(3.45, HALF_ODD) = 3
round(3.78, HALF_EVEN) = 4