获得错误最大函数嵌套级别达到200

时间:2012-11-09 12:25:41

标签: php symfony

我目前正在处理SymfonyRest API。我是这个framework的新手。我已正确安装Symfony。现在我已经安装了FriendsOfSymfony捆绑包,一切都很顺利,但当我点击logout时,我收到了以下错误

 Fatal error: Maximum function nesting level of '100' reached, aborting! in C:\xampp\htdocs\Symfony\vendor\twig\lib\Twig\Loader\Filesystem.php on line 6010

经过一些搜索,我找到了一个在xdebug中设置php.ini的解决方案,设置限制200而不是100,然后我收到以下错误,

 Fatal error: Maximum function nesting level of '200' reached, aborting! in C:\xampp\htdocs\Symfony\vendor\twig\lib\Twig\Loader\Filesystem.php on line 6010

我完全无法看到symfony的演示。请大家告诉我怎样才能摆脱这个问题?

2 个答案:

答案 0 :(得分:3)

尝试检查调用堆栈。也许你有一个无限循环。 取消激活xDebug或将php.ini中的最大嵌套级别设置为更高:

xdebug.max_nesting_level=500

这是正常行为。 尝试类似的事情:

    $traceStack = debug_backtrace();
    var_dump($traceStack);
    $i=0;
    foreach($traceStack as $n) {
        /* do what you want here */
        /*
         *   $n is an array of:
         *   'file' => ..
         *   'line' => ...
         *   'function' ...
         *   'class' => ...
         *   'object' => ...
         *   'type' => ...
         *   'args' => ...
         */
    }

重要:不要忘记重启apache(或FPM)!

答案 1 :(得分:0)

就我而言,它与作曲家有关。一些供应商已在 composer.json 文件中更新,但我忘记运行命令 composer update ,也不执行 composer install 。系统生成了一连串的错误,这导致了这个最大的嵌套级别'。

执行这些命令后,问题得到解决