정의 및 사용법
log10() 함수는 주어진 숫자의 밑이 10인 로그(상용로그)를 계산합니다.
밑이 10인 로그는 흔히 상용로그(common logarithm)라고도 불립니다. log10(x) 함수는 log10x 값을 구하며, 자연로그와는 다음과 같은 관계식으로 연결됩니다.
log10x = logex / loge10
예를 들어 다음과 같습니다.
log10100 = loge100 / loge10 = 2
PHP에서는 log10() 함수를 통해 이러한 계산을 손쉽게 수행할 수 있습니다.
문법
log10 ( float $arg ) : float
매개변수
| 번호 | 매개변수 및 설명 |
|---|---|
| 1 | arg 밑이 10인 로그를 계산할 숫자입니다. |
반환값
PHP log10() 함수는 인자로 전달된 값(arg)의 밑이 10인 로그를 반환합니다.
지원 버전
이 함수는 PHP 4.x, PHP 5.x, PHP 7.x 버전에서 모두 사용할 수 있습니다.
예제 1: 기본 사용법
다음 예제는 100의 밑이 10인 로그를 계산합니다.
<?php
$arg=100;
echo "log10(" . $arg. ")=" . log10($arg) . "\n";
?>
출력 결과
log10(100)=2
예제 2: 오일러 수의 상용로그
다음 코드는 오일러 수(Euler Number) M_E의 상용로그를 계산합니다. 그 결과는 PHP에 미리 정의되어 있는 상수 M_LOG10E와 동일함을 확인할 수 있습니다.
<?php
$arg=M_E;
echo "log10(" . $arg. ")=" . log10($arg) . "\n";
echo "predefined constant M_LOG10E=" . M_LOG10E;
?>
출력 결과
log10(2.718281828459)=0.43429448190325
predefined constant M_LOG10E=0.43429448190325
예제 3: 0의 로그
다음 예제는 log100을 계산하며, 수학적으로 정의되지 않기 때문에 음의 무한대(-infinity)를 반환합니다.
<?php
$arg=0;
echo "log10(" . $arg. ")=" . log10($arg) . "\n";
?>
출력 결과
log10(0)=-INF
예제 4: NAN 값 처리
마찬가지로 sqrt(-1)은 NAN(Not A Number)을 반환하므로, 그 log10() 값 역시 NAN이 됩니다.
<?php
$arg=sqrt(-1);
echo "log10(" . $arg. ")=" . log10($arg) . "\n";
?>
출력 결과
log10(NAN)=NAN
특수 값 처리 정리
log10() 함수의 특수 입력값 처리 결과를 정리하면 다음과 같습니다.
- log10(0) → -INF (음의 무한대)
- log10(음수) → NAN (정의되지 않은 값)
- log10(1) → 0
실무에서는 로그를 취하기 전에 입력값이 0보다 큰 양수인지 반드시 검증하는 것이 안전합니다.