【发布时间】:2011-05-16 16:17:40
【问题描述】:
PHP 中有一个非常糟糕的限制:如果你调用某个函数 a1(),它调用 a2(),它调用 a3...所以当 a99() 调用 a100() 时,你会看到
致命错误:达到“100”的最大函数嵌套级别,正在中止!
有没有办法将嵌套调用的 100 次限制增加到 500 或 10000 次?
这对我来说很重要,因为我正在开发一个包含大量回调的基于事件的系统。
【问题讨论】:
-
100 似乎有点过分,即使对于事件框架也是如此。
-
@Ignacio:即使重点是事件框架,也很简单,具有需要更高嵌套级别的递归函数。数万(甚至数百万)在这种情况下并不少见。
-
stackoverflow.com/a/36440027/2652524我用这个答案解决了我的问题
-
@IgnacioVazquez-Abrams 如果您正在执行函数式编程而不是面向对象或过程式编程,那么 100 很容易成为杯水车薪。考虑到该领域的许多 PHD 建议使用函数式而不是 OOP 或 proc,实际上,您应该始终准备好拥有大量递归函数。