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

PHP bcsub() 함수로 임의 정밀도 숫자 뺄셈하기 – 사용법과 예제 총정리

PHP에서 bcsub() 수학 함수는 한 임의 정밀도(arbitrary precision) 숫자를 다른 숫자에서 빼는 데 사용됩니다. 이 함수는 두 개의 임의 정밀도 숫자를 문자열 형태로 받아들이며, 결과를 지정된 정밀도에 맞춰 조정한 후 두 숫자의 차이를 반환합니다.

문법(Syntax)

string bcsub($num_str1, $num_str2, $scaleVal)

매개변수(Parameters)

bcsub() 함수는 세 가지 매개변수인 $num_str1, $num_str2, $scaleVal을 받습니다.

  • $num_str1 − 왼쪽 피연산자(left operand)를 나타내며, 문자열(string) 타입의 매개변수입니다.

  • $num_str2 − 오른쪽 피연산자(right operand)를 나타내며, 역시 문자열 타입의 매개변수입니다.

  • $scaleVal − 선택적(optional) 정수형 매개변수로, 결과값에서 소수점 이하 몇 자리까지 표시할지 지정합니다. 기본값은 0입니다.

반환 값(Return Values)

bcsub() 함수는 두 숫자 $num_str1$num_str2의 뺄셈 결과를 문자열(string) 형태로 반환합니다.

예제 1 – $scaleVal 매개변수 없이 bcsub() 함수 사용하기

<?php
    // bcsub() 함수 사용 예제
    // 임의 정밀도를 가진 두 입력 숫자
    $num_string1 = "10.555";
    $num_string2 = "3";

    // $scaleVal 매개변수 없이 두 숫자의 뺄셈 계산
    $result = bcsub($num_string1, $num_string2);
    echo "scaleVal 없이 출력한 결과: ", $result;
?>

출력 결과

scaleVal 없이 출력한 결과: 7

$scaleVal 매개변수를 지정하지 않으면 bcsub() 함수는 출력 결과에서 소수점 이하 자릿수를 모두 버립니다.

예제 2 – $scaleVal 매개변수를 사용하여 bcsub() 함수 실행하기

이번에는 동일한 입력값에 scaleVal을 3으로 지정해 보겠습니다. 그러면 출력 결과가 소수점 이하 세 자리까지 표시됩니다.

<?php
    // bcsub() 함수 사용 예제
    // 임의 정밀도를 가진 두 입력 숫자
    $num_string1 = "10.5552";
    $num_string2 = "3";

    // scale 값을 3으로 지정
    $scaleVal = 3;

    // $scaleVal 매개변수를 사용하여 두 숫자의 뺄셈 계산
    $result = bcsub($num_string1, $num_string2, $scaleVal);
    echo "scaleVal 적용 후 출력 결과: ", $result;
?>

출력 결과

scaleVal 적용 후 출력 결과: 7.555

위 예제에서 볼 수 있듯이, $scaleVal을 3으로 설정하면 뺄셈 결과인 7.5552가 소수점 셋째 자리까지만 표시되어 7.555가 출력됩니다. 금융 계산처럼 높은 정밀도가 필요한 상황에서 bcsub() 함수와 $scaleVal 매개변수를 함께 활용하면 원하는 자릿수만큼 정확한 결과를 얻을 수 있습니다.