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

PHP log() 함수 완벽 가이드 – 자연로그 계산 방법과 예제

정의 및 사용법

log() 함수는 숫자의 자연로그(natural logarithm)를 계산하는 PHP 내장 함수입니다.

로그(logarithm)는 지수 함수의 역연산입니다. 예를 들어 102=100이라면 log10100=2가 됩니다. 자연로그는 오일러 수 e를 밑으로 하는 로그를 의미하며, PHP에서는 미리 정의된 상수 M_E를 통해 e의 값인 2.7182818284590452354를 확인할 수 있습니다.

예를 들어 exp(4.60517018599)=100, 즉 e4.60517018599=100이므로 loge100=4.60517018599가 됩니다.

PHP에서는 이러한 자연로그(loge)를 log() 함수 하나로 간편하게 계산할 수 있습니다.

문법(Syntax)

log ( float $arg [, float $base = M_E ] ) : float

매개변수

번호매개변수 및 설명
1arg
로그를 계산할 대상 값
2base
로그의 밑(base). 기본값은 M_E이며, 생략 시 자연로그가 계산됩니다.

반환값

PHP log() 함수는 arg에 대한 밑 base의 로그 값을 반환합니다. base를 지정하지 않으면 자연로그가 반환됩니다.

PHP 버전

이 함수는 PHP 4.x, PHP 5.x, PHP 7.x 등 모든 주요 버전에서 사용할 수 있습니다.

예제 1: 100의 자연로그 구하기

다음 예제는 100의 자연로그를 계산합니다.

<?php
   $arg=100;
   echo "log(" . $arg . ")=" . log($arg);
?>

실행 결과:

log(100)=4.6051701859881

예제 2: 2의 자연로그와 M_LN2 상수 비교

다음 코드는 2의 자연로그를 계산하며, 그 결과는 미리 정의된 상수 M_LN2와 동일합니다.

<?php
   $arg=2;
   echo "log(" . $arg . ")=" . log($arg) . "\n";
   echo "predefined constant M_LN2 : " . M_LN2
?>

실행 결과:

log(2)=0.69314718055995
predefined constant M_LN2 : 0.69314718055995

예제 3: 밑을 지정한 로그 계산 (log₂1024)

두 번째 인수로 밑을 지정하면 해당 밑의 로그를 계산할 수 있습니다. 다음 예제는 log21024를 계산하여 10을 반환합니다.

<?php
   $arg=1024;
   $base=2;
   echo "log(" . $arg . "," . $base . ")=" . log($arg, $base) . "\n";
?>

실행 결과:

log(1024,2)=10

예제 4: log₂e와 M_LOG2E 상수 비교

마찬가지로 log2e를 계산하면 미리 정의된 상수 M_LOG2E와 같은 값이 나옵니다.

<?php
   $arg=M_E;
   $base=2;
   echo "log(" . $arg . "," . $base . ")=" . log($arg, $base) . "\n";
   echo "predefined constant M_LOG2E = ". M_LOG2E;
?>

실행 결과:

log(2.718281828459,2)=1.442695040889
predefined constant M_LOG2E = 1.442695040889

참고: 관련 함수

밑이 10인 상용로그가 필요하면 전용 함수 log10()을 사용하는 것이 좋으며, 로그의 역연산인 지수 계산에는 exp() 함수를 활용할 수 있습니다.