Example #1 Factorial function using GMP
<?php
function fact($x)
{
$return = 1;
for ($i=2; $i < $x; $i++) {
$return = gmp_mul($return, $i);
}
return $return;
}
echo gmp_strval(fact(1000)) . "\n";
?>
This will calculate factorial of 1000 (pretty big number) very fast.
rks at rks dot org (13-Dec-2008 05:25)
I believe that "fact" computes the factorial of $x-1 not of $x. The for statement should be
for ($i=2; $i <= $x; $i++)
not
for ($i=2; $i < $x; $i++)
If you try to compute the factorial of 2 for example, the for loop will not be executed and the result will be 1.