2017-10-11 157 views
-1

我有一个现有项目的问题。 我得到的消息:未定义的变量错误 - 奇怪的情况

ErrorException(E_ERROR)不确定变量:错误

,并在我的代码中发生错误是:

@if (count($errors) > 0) 

我尝试安装新项目相同的插件和功能和新项目我没有这个问题和错误异常。 另外我无法更改该文件,因为它是插件文件。

环境两个项目分别是:
LEMP,
PHP 7.1.1
Laravel:5.5

什么可以是错误?

+1

你在哪里有$错误界定?你从哪里来的? –

+0

[PHP:“注意:未定义的变量”,“注意:未定义的索引”和“注意:未定义的偏移量”的可能重复](https://stackoverflow.com/questions/4261133/php-notice-undefined-variable- notice-undefined-index-and-notice-undef) – aynber

+0

你可能没有事先定义$错误。有些环境会抛出错误,有些会默默登录,或者根本不会。 – aynber

回答

0

我的团队被取消注释ShareErrorsFromSession在app/HTTP/Kernel.php解决了这个错误文件

\Illuminate\View\Middleware\ShareErrorsFromSession::class, 
0

你在哪里创建了路线?

里面的web.php文件,尝试将

Route::group(['middleware' => ['web']], function() { 
    //routes here 
} 

声明中创建您的路线。

您可能需要清除该路由缓存过 php artisan route:cache

从文档:https://laravel.com/docs/5.5/middleware

开箱,Laravel自带的Web和API中间件组认为 包含常见的中间件你可能想要应用到您的网络界面和 API路线:

/** 
* The application's route middleware groups. 
* 
* @var array 
*/ 
protected $middlewareGroups = [ 
    'web' => [ 
     \App\Http\Middleware\EncryptCookies::class, 
     \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class, 
     \Illuminate\Session\Middleware\StartSession::class, 
     \Illuminate\View\Middleware\ShareErrorsFromSession::class, 
     \App\Http\Middleware\VerifyCsrfToken::class, 
     \Illuminate\Routing\Middleware\SubstituteBindings::class, 
    ], 

    'api' => [ 
     'throttle:60,1', 
     'auth:api', 
    ], 
]; 
+0

我没有创建该路线。我使用voyager管理面板,他为他的路线生成路线文件。 – Duka

+0

我没有创建该路线。我使用voyager管理面板,他为他的路线生成路线文件。 在web.php我只是注册该路线: Voyager :: routes(); 另外我是在web中间件组的web.php中添加该路由,如你所说,但我没有解决我的问题。 作为临时解决方案,我在启动方法中设置在AppServiceProvider中: error_reporting(E_ALL); – Duka

+0

您是否向Voyager的维护人员报告过问题? – kerrin