2010-05-25 110 views
0

我在PHP代码有一个问题,即使用递归:致命错误:134217728个字节允许内存大小耗尽

<?php 

solveTowers(5, "A", "B", "C"); 

function solveTowers($count, $src, $dest, $spare) 
    { 
     if (count == 1) 
     { 
      echo "Move a disk from ".$src." to ".$dest ; 
     } 
     else 
     { 
      solveTowers($count - 1, $src, $spare, $dest); 
      solveTowers(1, $src, $dest, $spare); 
      solveTowers($count - 1, $spare, $dest, $src); 
     } 
    } 

?> 

但它不运行!发生

此错误:

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 261904 bytes) in C:\xampp\htdocs\cap492\towers.php on line 13

13号线是在其他statment函数的第一个电话

能否请你帮我这个?

+9

您有堆栈溢出! – Josh 2010-05-25 12:11:56

+0

如果您的问题已解决,请打勾显示给每个答案旁的OP的正确答案。 – 2010-07-09 18:56:15

回答

11

if($ count == 1)if if(count == 1)

+4

+1:良好的捕捉:) – Sarfraz 2010-05-25 12:12:47

+2

另一个说明:确保错误报告级别也设置为报告通知。 'count'最初被视为一个常量,后来发现PHP并不存在,所以它很有帮助地假设你的意思是字符串“count”。这个假设会提出一个可能被注意到的通知。 – erisco 2010-05-25 12:14:08

+0

你是对的:\ 发生这种情况是因为我将代码从Java编译为PHP语言 现在可以使用了,谢谢你 – basma 2010-05-25 16:54:41

相关问题