vrana           Tue Jan 11 12:19:21 2005 EDT

  Modified files:              
    /phpdoc/en/reference/gmp    reference.xml 
  Log:
  Optimize example, avoid stack overflow (bug #28827)
  
http://cvs.php.net/diff.php/phpdoc/en/reference/gmp/reference.xml?r1=1.10&r2=1.11&ty=u
Index: phpdoc/en/reference/gmp/reference.xml
diff -u phpdoc/en/reference/gmp/reference.xml:1.10 
phpdoc/en/reference/gmp/reference.xml:1.11
--- phpdoc/en/reference/gmp/reference.xml:1.10  Sat Jan  8 15:09:24 2005
+++ phpdoc/en/reference/gmp/reference.xml       Tue Jan 11 12:19:20 2005
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!-- $Revision: 1.10 $ -->
+<!-- $Revision: 1.11 $ -->
  <reference id="ref.gmp">
   <title>GMP Functions</title>
   <titleabbrev>GMP</titleabbrev>
@@ -80,11 +80,11 @@
 <?php
 function fact($x) 
 {
-    if ($x <= 1) {
-        return 1;
-    } else {
-        return gmp_mul($x, fact($x-1));
+    $return = 1;
+    for ($i=2; $i < $x; $i++) {
+        $return = gmp_mul($return, $i);
     }
+    return $return;
 }
 
 echo gmp_strval(fact(1000)) . "\n";

Reply via email to