我想定义一个注册事件的服务提供者。所以做了以下(取自一本书)
<?php
namespace MyApp\Providers;
use Illuminate\Support\ServiceProvider;
class EventsProvider extends ServiceProvider
{
public function boot()
{
Event::listen('some.event', function($parameter)
{
// Handle the event..
});
}
}
然后我将它添加到提供者数组。
但是当我执行代码时,我收到以下错误
实现其余方法 (照亮\支持\的ServiceProvider ::寄存器)
它迫使我宣布register()
方法。
当我向EventsProvider
类添加一个名为register()
的方法(没有实现,只是让它返回null)时出现以下错误
未找到类'MyApp / Providers / EventProvider'
为什么会这样,我该如何解决?
答案 0 :(得分:2)
你只需要声明它,因为它在界面中声明:
<?php namespace MyApp\Providers;
use Illuminate\Support\ServiceProvider;
class EventsProvider extends ServiceProvider {
public function boot()
{
Event::listen('some.event', function($parameter)
{
// Handle the event..
});
}
public function register()
{
}
}
然后执行
composer dump-autoload --optimize
但是你可能在某个地方也有拼写错误,因为它说的是Class 'MyApp/Providers/EventProviders' not found
,但它应该是MyApp/Providers/EventProvider
。