【PHP8.x】fmod関数の使い方

作成日: 更新日:

fmod関数は浮動小数点数(float)の剰余を計算する関数です。この関数は、指定された二つの浮動小数点数を受け取り、第一引数を第二引数で割った際の余りを浮動小数点数として返します。PHPにおける一般的な%(モジュロ)演算子は整数にのみ適用されますが、fmod関数は小数を含む数値の割り算の余りを正確に求めたい場合に非常に有用です。

具体的には、fmod(x, y)という形式で使用され、xyで割った際の剰余が結果となります。この関数の重要な特徴の一つは、戻り値の剰余の符号が常に第一引数xの符号と同じになる点です。

例えば、fmod(10.5, 3.0)を実行すると、1.5が返されます。これは、10.53.0で割ると商が3で、余りが1.5となるためです。また、fmod(-10.5, 3.0)を実行した場合は、被除数である-10.5の符号が負であるため、結果は-1.5となります。

この関数は、例えば時間計算で秒数を分や時間に変換する際に余りの秒数を求めたり、特定の周期を持つ処理で現在の位置を計算する際など、浮動小数点数の精密な剰余が必要とされる様々な場面で利用されます。システムエンジニアを目指す方々にとって、浮動小数点数の剰余計算が必要な際に適切にこの関数を選択することは、正確な数値処理を行う上で不可欠な知識となります。

基本的な使い方

構文(syntax)

<?php

$num1 = 10.5;
$num2 = 3.2;
$remainder = fmod($num1, $num2);

echo "{$num1}{$num2} で割った浮動小数点数の剰余: " . $remainder;

?>

引数(parameters)

float $num1, float $num2

  • float $num1: 被除数 (割られる数)
  • float $num2: 除数 (割る数)

戻り値(return)

float

fmod関数の戻り値はfloat型です。これは、数値dividndを数値divisorで割ったときの余りを浮動小数点数で返します。

【PHP8.x】fmod関数の使い方 | いっしー@Webエンジニア