gmp_nextprime()
(PHP 5 >= 5.2.0, PHP 7)
Find next prime number
说明
gmp_nextprime(int $a): GMP
Find next prime number
参数
- $a
可以是一个 GMP数据resouce,或一个可以转换为数值的字符串。
返回值
Return the next prime number greater than$a, as a GMP number.
范例
gmp_nextprime() example
<?php $prime1 = gmp_nextprime(10); // next prime number greater than 10 $prime2 = gmp_nextprime(-1000); // next prime number greater than -1000 echo gmp_strval($prime1) . "\n"; echo gmp_strval($prime2) . "\n"; ?>
以上例程会输出:
11 2
注释
Note:This function uses a probabilistic algorithm to identify primes and chances to get a composite number are extremely small.
Negative numbers N always have at least four factors: N*1=N and abs(N)*-1=N. Therefore, even if "natural number" weren't in the definition of a prime (which it is), no negative number would ever qualify. Therefore, the next-largest prime number to any negative number is always 2.
Prime numbers are positive, non-zero numbers that have exactly two factors. No more, no less. So testing negative numbers doesn't really make any sense.
It seems gmp_nextprime on negative numbers always returns 2.