PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのgmp_divexact()関数とは?構文や使用例をわかりやすく解説

PHPのgmp_divexact()関数は、あるGMP数が別のGMP数で正確に(余りなく)割り切れるかどうかをチェックし、除算を行うための関数です。割り切れることが事前に分かっている場合には、より高速な除算アルゴリズムを利用できる点が特徴です。この関数を使用するには、PHPにGMP拡張モジュールがインストールされている必要があります。

構文

gmp_divexact($n, $divisor)

パラメータ

  • n − 割られる数(GMP数または数値文字列)
  • divisor − 割る数(除数となる値)

戻り値

gmp_divexact()関数は、除算の結果をGMP数として返します。

注意点

gmp_divexact()は、nがdivisorで確実に割り切れることが事前に分かっている場合にのみ正しい結果を保証します。割り切れない数値に対して使用した場合の動作は保証されていないため、そのようなケースでは通常の除算用関数であるgmp_div()の利用を検討してください。

使用例

以下に、20を5で割る例を示します。

<?php
   $n = "20";
   $divisor = "5";
   $res = gmp_divexact($n, $divisor);
   echo $res;
?>

出力

上記のコードを実行すると、次のような出力が得られます。

4

この例では、20は5で余りなく割り切れるため、結果として「4」が出力されます。このようにgmp_divexact()を使うことで、大きな整数(多倍長整数)でも効率よく正確な除算を行うことができます。

  1. PHPのgregoriantojd()関数とは?構文・パラメータ・使用例を解説

    PHPのgregoriantojd()関数は、グレゴリオ暦(現在広く使われている暦)の日付をユリウス通日(Julian Day Count)に変換し、その結果としてユリウス日番号を返す関数です。ユリウス通日は、天文学や歴史上の日付計算などで利用される連続した日数表現であり、異なる暦同士の日付比較や計算を簡単に行えるのが特徴です。 注意 − グレゴリオ暦として有効な範囲は、紀元前4714年11月25日から紀元9999年12月31日以降までとなっています。この範囲外の日付を指定すると、正しい結果が得られない場合があります。 構文 GregorianToJD(month, date, year)

  2. PHPのfscanf()関数とは?使い方とフォーマット指定子を徹底解説

    PHPのfscanf()関数は、オープン中のファイルから入力を読み込み、指定されたフォーマットに従って解析するための関数です。パラメータを2つだけ渡して呼び出した場合、解析結果の値が配列として返されます。基本構文fscanf(file_pointer, format, mixed)パラメータの詳細file_pointer − fopen()関数を使って作成されたファイルシステムポインタリソースを指定します。format − 読み込むデータの形式(フォーマット)を指定します。使用できる主なフォーマット指定子は以下の通りです。%% − パーセント記号(%)そのものを返す%b − 2進数として読み込