📜  PHP | gmp_powm()函数(1)

📅  最后修改于: 2023-12-03 14:45:16.779000             🧑  作者: Mango

PHP | gmp_powm()函数

简介

gmp_powm()函数是PHP的GNU多精度数学函数库(GMP)的一部分,用于计算$a^b\bmod c$,即求$a$的$b$次方取模$c$的结果。它支持大数计算,可处理非常大的数字。

语法
gmp_powm ( GMP|int|string $base , GMP|int|string $exp , GMP|int|string $mod ) : GMP
参数

gmp_powm()函数的参数包括三个,均为GMP的整数对象或整数字符串:

  • $base:底数,可以是一个GMP资源,或者一个整数字符串。
  • $exp:指数,可以是一个GMP资源,或者一个整数字符串。
  • $mod:模数,可以是一个GMP资源,或者一个整数字符串。

注意:在处理字符串时,如果它表示的数字太大,可能会导致内存问题。

返回值

gmp_powm()函数返回一个GMP资源,该资源包含计算结果。

示例
<?php
$a = gmp_powm(2, 100, 31);
echo gmp_strval($a) . "\n"; // 输出18

$b = gmp_powm('123', 456, '789');
echo gmp_strval($b) . "\n"; // 输出105

$c = gmp_powm('999999', 999999, '111111');
echo gmp_strval($c) . "\n"; // 输出1
?>
注意事项
  • 如果模数为负数,则函数会返回null值。
  • 当使用gmp_powm()函数时,底数和指数都必须是非负数。
  • 当使用gmp_powm()函数时,模数必须为正数。