【PHP8.x】log10関数の使い方
log10関数の使い方について、初心者にもわかりやすく解説します。
基本的な使い方
log10関数は、引数で指定された数値の常用対数(底が10の対数)を計算し、その結果を返す関数です。この関数は、与えられた数値が10の何乗であるか、という数学的な値を求めるときに利用されます。
引数には、対数を計算したい「正の浮動小数点数または整数」を指定します。PHP 8以降では、数値以外の型を渡すとTypeErrorが発生します。また、引数に負の数またはゼロを指定した場合、数学的に定義できないため、結果としてNAN(Not a Number)または-INF(負の無限大)といった特殊な浮動小数点値が返され、警告(Warning)が発行されることがありますので、引数の値は必ず正の数であることを確認してください。
戻り値は、計算された常用対数を表す浮動小数点数となります。例えば、log10(100)を実行すると2.0が、log10(1000)を実行すると3.0が返されます。
この関数は、主に科学技術計算、金融分析、データ分析における対数目盛の変換、音量や地震のマグニチュードのような指数関数的に変化するデータの処理など、幅広い分野で活用されます。数値の大きさをより扱いやすいスケールに変換する際に、非常に有用な基本的な数学関数の一つです。
構文(syntax)
1<?php 2 3log10(100); 4 5?>
引数(parameters)
float $num
- float $num: 真数(底が10の対数を計算したい数値)を指定します。
戻り値(return)
float
log10 関数は、引数として与えられた数値の常用対数(底が10の対数)を計算した結果を float 型で返します。
サンプルコード
PHP log10関数で常用対数を計算する
1<?php 2 3declare(strict_types=1); 4 5/** 6 * log10()関数の使い方を示すためのサンプル関数 7 * 8 * log10()は、引数に指定した数値の常用対数(底を10とする対数)を計算します。 9 * これは「10を何乗すればその数値になるか」を求める計算です。 10 */ 11function demonstrateLog10Usage(): void 12{ 13 // 例1: log10(100) 14 // 10の2乗 (10 * 10) は 100 なので、結果は 2 になります。 15 $number1 = 100; 16 $result1 = log10($number1); 17 echo "log10({$number1}) の結果: " . $result1 . PHP_EOL; 18 19 // 例2: log10(1000) 20 // 10の3乗 (10 * 10 * 10) は 1000 なので、結果は 3 になります。 21 $number2 = 1000; 22 $result2 = log10($number2); 23 echo "log10({$number2}) の結果: " . $result2 . PHP_EOL; 24 25 // 例3: log10(1) 26 // 10の0乗は 1 なので、結果は 0 になります。 27 $number3 = 1; 28 $result3 = log10($number3); 29 echo "log10({$number3}) の結果: " . $result3 . PHP_EOL; 30 31 // 例4: 整数乗ではない場合 32 // 結果は浮動小数点数(float)になります。 33 $number4 = 50; 34 $result4 = log10($number4); 35 echo "log10({$number4}) の結果: " . $result4 . PHP_EOL; 36} 37 38// 作成した関数を実行します 39demonstrateLog10Usage(); 40
PHPのlog10()関数は、引数で指定された数値の常用対数を計算するための関数です。常用対数とは、10を底とする対数のことで、「10を何乗すれば引数の数値になるか」という値を求めます。
この関数は、$numという一つの引数を取ります。ここには、対数を計算したい数値を浮動小数点数(float)で指定します。整数を渡した場合でも、PHPが自動的にfloat型に変換して処理します。関数の戻り値も浮動小数点数(float)で、計算された常用対数の値が返されます。
サンプルコードでは、いくつかの例を示しています。例えば、log10(100)は、10を2乗すると100になるため、2を返します。同様に、log10(1000)は3を、log10(1)は0を返します。引数に50のような10の整数乗ではない数値を指定した場合でも計算可能で、その結果は1.69897...のような浮動小数点数となります。このように、log10()関数は数値の桁数やスケールを評価する際などに利用されます。
log10関数を使用する際、引数には必ず正の数を指定してください。0を渡すと-INF(負の無限大)、負の数を渡すとNAN(非数)という特殊な値が返されます。これらはプログラムエラーにはなりませんが、意図しない計算結果の原因となるため、関数を呼び出す前に引数が0より大きいかを確認する処理を入れると安全です。また、戻り値は常に浮動小数点数(float)型です。log10(100)のように計算結果が整数になる場合でも、プログラム上は2.0のような浮動小数点数として扱われる点を覚えておきましょう。