【问题标题】:Laravel 5.2 with Sentinel 2 - Maximum function nesting level of '100' reached, aborting带有 Sentinel 2 的 Laravel 5.2 - 达到“100”的最大函数嵌套级别,正在中止
【发布时间】:2016-07-05 00:48:56
【问题描述】:

在我的 app.blade.php 基本模板中,我做了一个简单的检查以查看用户是否已登录。它看起来像这样:

@if (Sentinel::check())
    <li><a href="members.aspx">Members</a></li>
@else
    <li><a href="{{ url('/login') }}">Login</a></li>
    <li><a href="{{ url('/register') }}">Register</a></li>
@endif

这会触发Maximum function nesting level of '100' reached, aborting。任何想法为什么。我在 app.php 中正确定义了提供程序和外观。像这样:

'providers' => [
    ....
    Cartalyst\Sentinel\Laravel\SentinelServiceProvider::class,
    ....
],

'aliases' => [
    ....
    'Sentinel'  => Cartalyst\Sentinel\Laravel\Facades\Sentinel::class,
    ....
],

【问题讨论】:

    标签: php laravel-5.2 laravel-blade laravel-facade


    【解决方案1】:

    虽然我无法说明您收到此错误的原因,但我可以告诉您如何解决;您需要在您的php.ini 中编辑您的xdebug.max_nesting_level

    通常将其设置为 200 或 300 即可解决问题,并且通常仅在使用 xdebug 的本地开发中出现问题。

    你可以这样设置; xdebug.max_nesting_level=200xdebug.max_nesting_level=300

    有关此设置的更多信息可以在 xdebug 的docs 中找到。

    【讨论】:

    • 我通常不喜欢弄乱这些属性,因为我通常认为存在更大的问题。但是,这似乎确实可以解决这个问题。也许这只是一个低效的功能。谢谢。
    猜你喜欢
    • 2012-04-26
    • 1970-01-01
    • 1970-01-01
    • 2016-05-17
    • 2015-08-28
    • 1970-01-01
    • 1970-01-01
    • 2016-08-03
    • 2016-06-24
    相关资源
    最近更新 更多