猿问

解决“致命错误:最大功能嵌套级别‘100’达到,中止!”在PHP中

解决“致命错误:最大功能嵌套级别‘100’达到,中止!”在PHP中

我创建了一个函数,查找html文件中的所有URL,并对链接到已发现URL的每个html内容重复相同的进程。该函数是递归的,可以无休止地进行下去。但是,我设置了一个全局变量,使递归在100个递归之后停止,从而限制了递归。

但是,php返回此错误:

致命错误:达到“100”的最大功能嵌套级别,中止操作!在第1355行的D:\wamp\www\crawler1\simplehtmldom_1_5\simple_html_dom.php中

我在这里找到了一个解决办法:增加嵌套函数调用限制但这在我的情况下行不通。

我引用上述链接中的一个答案。请考虑一下。

“您安装了Zend、IonCube或xDebug吗?如果是的话,您可能就是从那里得到这个错误的。

几年前我遇到了这种情况,结果是Zend把这个限制放在那里,而不是PHP。当然,删除它将允许>超过100个迭代,但最终会达到内存限制。“

有没有办法提高PHP中最大的函数嵌套级别

慕姐8265434
浏览 374回答 3
3回答

一只甜甜圈

增加.的价值xdebug.max_nesting_level在你的php.ini

慕码人2483693

一个简单的解决办法解决了我的问题。我刚才评论了这句话:zend_extension = "d:/wamp/bin/php/php5.3.8/zend_ext/php_xdebug-2.1.2-5.3-vc9.dll在我的php.ini档案。此扩展将堆栈限制为100所以我把它关掉了。递归函数现在正在按预期工作。
随时随地看视频慕课网APP
我要回答