(PHP 4 >= 4.0.4, PHP 5)
gmp_fact — Factorial
The factorial number.
Dies kann entweder eine resource für einen GMP-Wert sein oder ein numerischer String, wenn es möglich ist, diesen in einen GMP-Wert umzuwandeln.
Eine resource für einen GMP-Wert.
Beispiel #1 gmp_fact() example
<?php
$fact1 = gmp_fact(5); // 5 * 4 * 3 * 2 * 1
echo gmp_strval($fact1) . "\n";
$fact2 = gmp_fact(50); // 50 * 49 * 48, ... etc
echo gmp_strval($fact2) . "\n";
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
120 30414093201713378043612608166064768844377641568960512000000000000
Alternative method of calculating factorials.
<?php
function fact($n){
if($n > 170){return 0;} //This function can only calculate the factorial of numbers below 171
$i = $a = 1;
while ($i<=$n){
$a = $a * $i;
$i++;
}
$a = sprintf('%f', $a); //Convert from Scientific notation
return substr($a, 0, -7); //Remove the trailing decimal places
}
echo fact(171); //Returns 0
echo "<br />";
echo fact(12); //Returns 479001600
?>