I'm getting this error message in my Laravel application after I upgraded to Laravel 5.1.
FatalErrorException in Dispatcher.php line 200:
Maximum function nesting level of '100' reached, aborting!
This issue occurs on some URLs of my app. I have done dozens of composer update
but issue still persist. Any suggestion at all will be appreciated
Issue is caused by default xdebug.max_nesting_level
which is 100.
The workaround for now is to increase xdebug.max_nesting_level
to a certain level say 200 or 300 or 400
I fixed mine by increasing xdebug.max_nesting_level to 120, by adding the line below to bootstrap/autoload.php
in Laravel 5.1
ini_set('xdebug.max_nesting_level', 120);
.........
define('LARAVEL_START', microtime(true));
The problem is created because of 1 PHP extension in Apache- php_xdebug
So, the solution is-
max_nesting_level
in laravelOption 1-
To disable it, you can follow this.
If you are using WAMP Server, then you can easily do it by going to php.ini-
And then commit this-
zend_extension = "c:/WAMP/bin/php/php5.5.12/zend_ext/php_xdebug-2.2.5-5.5-vc11-x86_64.dll"
Option 2-
You can increase the limit by this way.
If you are using WAMP Server, then you can easily do it by going to php.ini-
And after zend_extension = "c:/WAMP/bin/php/php5.5.12/zend_ext/php_xdebug-2.2.5-5.5-vc11-x86_64.dll"
, there should be something like this-
[xdebug]
xdebug.remote_enable = off
xdebug.profiler_enable = off
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = "c:/WAMP/tmp"
xdebug.show_local_vars=0
Then, just add 1 line there-
xdebug.max_nesting_level=500
Option 3-
You can also set this configuration in Laravel autoload.php file.
You can simply add this line in the file (anywhere in the file)-
ini_set('xdebug.max_nesting_level', 500);
And you will be done :)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With