PHP의 log() 함수는 숫자의 자연로그(natural logarithm) 값을 반환하는 내장 수학 함수입니다. 백(base)을 지정하지 않으면 e를 백으로 하는 자연로그가 계산되며, 백을 직접 지정하면 해당 백을 기준으로 한 로그 값이 반환됩니다.
구문
log(num, base)
매개변수
num − 로그를 계산하려는 숫자 값입니다.
base − 로그의 백(base)입니다. 선택 사항이며, 생략하면 자연로그(e를 백으로 사용)가 계산됩니다.
반환값
log() 함수는 지정된 숫자의 로그 값을 반환합니다. 입력값이 0인 경우에는 -INF(음의 무한대)를 반환한다는 점에 유의하세요.
예제 1
<?php echo(log(1)); ?>
출력
0
1의 자연로그는 수학적으로 항상 0이므로 위 코드는 0을 출력합니다.
예제 2
또 다른 예제를 살펴보겠습니다.
<?php echo(log(0)); ?>
출력
-INF
로그 함수는 수학적으로 정의되지 않는 0 이하의 입력값에 대해 -INF를 반환합니다. 실무에서는 로그 계산 전에 입력값이 양수인지 검증하는 것이 안전합니다.
예제 3
<?php echo(log(10)); echo(log(2.7)); ?>
출력
2.302585092994 0.99325177301028
10의 자연로그는 약 2.3026이고, 2.7의 자연로그는 약 0.9933입니다. 이처럼 log() 함수는 소수점 이하의 정밀한 결과값까지 반환해 줍니다.