Laravel5,我喜欢将 Event::listen() 放在一个单独的文件中,但是 Event facade 是未知的
Laravel5, I like to place Event::listen() in a separate file, but the Event facade was unknown
我想在一个单独的文件中有一组 Event::listen()
,这是我目前所做的。
bootstrap/autoload.php
...
require __DIR__.'/../bootstrap/listeners.php';
bootstrap/listeners.php
<?php
use \Event;
Event::listen('illuminate.query', function($query) {
dd($query);
});
错误是class找不到事件
满足我的要求的正确方法是什么?我不确定创建一个新的 .php 文件并从 bootstrap/autoload 要求它。php 是否是满足此要求的正确方法。
请帮忙。
谢谢
在你的情况下,Facades 在引导程序中不可用,因为 IOC
Laravel 的容器此时尚未创建,因此 Facades 尚未初始化。
在 L5 中,EventListeners 必须在 EventServiceProvider 的引导中注册 (app/providers)。
我想在一个单独的文件中有一组 Event::listen()
,这是我目前所做的。
bootstrap/autoload.php
...
require __DIR__.'/../bootstrap/listeners.php';
bootstrap/listeners.php
<?php
use \Event;
Event::listen('illuminate.query', function($query) {
dd($query);
});
错误是class找不到事件
满足我的要求的正确方法是什么?我不确定创建一个新的 .php 文件并从 bootstrap/autoload 要求它。php 是否是满足此要求的正确方法。
请帮忙。 谢谢
在你的情况下,Facades 在引导程序中不可用,因为 IOC Laravel 的容器此时尚未创建,因此 Facades 尚未初始化。
在 L5 中,EventListeners 必须在 EventServiceProvider 的引导中注册 (app/providers)。