内置Symfonyob娱乐下载事件
编辑该页面警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 4.3,不再维护。
读这个页面的更新版本Symfob娱乐下载ony 6.2(当前的稳定版本)。
内置Symfonyob娱乐下载事件
在处理一个HTTP请求,Symfony框架(或任何应用程序使用ob娱乐下载HttpKernel组件)分派一些事件你可以使用它来修改请求是如何处理的。
内核事件
每个事件派遣HttpKernel组件的一个子类KernelEvent提供以下信息:
- getRequestType ()
-
返回类型的请求(
HttpKernelInterface: MASTER_REQUEST
或HttpKernelInterface: SUB_REQUEST
)。 - getKernel ()
- 返回内核处理请求。
- getRequest ()
-
返回当前
请求
被处理。 - isMasterRequest ()
- 检查是否这是一个主请求。
kernel.request
事件类:RequestEvent
这事件是派遣在Symfony的早期,在控制器决定。ob娱乐下载这是有用的信息添加到请求或返回一个响应早期停止请求的处理。
另请参阅
阅读更多的kernel.request事件。
执行这个命令来找出哪些听众注册为这个事件及其优先级:
1
美元php bin /控制台调试:事件分配器kernel.request
kernel.controller
事件类:ControllerEvent
这个事件是派遣后,控制器执行已经解决,但在执行之前。是有用的初始化控制器所需的事情后,等param转换器,甚至完全改变控制器:
1 2 3 4 5 6 7 8 9
使用ob娱乐下载\组件\HttpKernel\事件\ControllerEvent;公共函数onKernelController(ControllerEvent美元事件){/ /……/ /控制器可以改变任何PHP调用美元事件- >setController (美元myCustomController);}
另请参阅
阅读更多的kernel.controller事件。
执行这个命令来找出哪些听众注册为这个事件及其优先级:
1
美元php bin /控制台调试:事件分配器kernel.controller
kernel.controller_arguments
这个事件之前派出一个控制器。是有用的配置参数将传递给控制器。通常,这是使用URL路由参数映射到它们相应的命名参数;或通过时的当前请求请求
type-hint发现:
1 2 3 4 5 6 7 8 9 10 11 12 13
使用ob娱乐下载\组件\HttpKernel\事件\ControllerArgumentsEvent;公共函数onKernelControllerArguments(ControllerArgumentsEvent美元事件){/ /……/ /得到控制器和请求参数美元namedArguments=美元事件- >getRequest ()- >属性- >所有();美元controllerArguments=美元事件- >getArguments ();/ /设置控制器参数修改原始参数或添加新的美元事件- >setArguments (美元newArguments);}
执行这个命令来找出哪些听众注册为这个事件及其优先级:
1
美元php bin /控制台调试:事件分配器kernel.controller_arguments
kernel.view
事件类:ViewEvent
这个事件后派出控制器已经执行但只有如果控制器不返回一个响应对象。返回值是有用的变换(如字符串和一些HTML内容)进入响应
Symfony所需的对象:ob娱乐下载
1 2 3 4 5 6 7 8 9 10 11 12
使用ob娱乐下载\组件\HttpFoundation\响应;使用ob娱乐下载\组件\HttpKernel\事件\ViewEvent;公共函数onKernelView(ViewEvent美元事件){美元价值=美元事件- >getControllerResult ();美元响应=新反应();/ /……自定义返回值的响应美元事件- >setResponse (美元响应);}
另请参阅
阅读更多的kernel.view事件。
执行这个命令来找出哪些听众注册为这个事件及其优先级:
1
美元php bin /控制台调试:事件分配器kernel.view
kernel.response
事件类:ResponseEvent
这个事件后派出控制器或任何kernel.view
侦听器返回一个响应
对象。是有用的修改或替换的反应,然后再把它寄回(如添加/修改HTTP头,加上饼干,等等):
1 2 3 4 5 6 7 8
使用ob娱乐下载\组件\HttpKernel\事件\ResponseEvent;公共函数onKernelResponse(ResponseEvent美元事件){美元响应=美元事件- >getResponse ();/ /……修改响应对象}
另请参阅
阅读更多的kernel.response事件。
执行这个命令来找出哪些听众注册为这个事件及其优先级:
1
美元php bin /控制台调试:事件分配器kernel.response
kernel.finish_request
这个事件是派遣后kernel.response
事件。是有用的设置应用程序的全局状态(例如,译者侦听器重置译者的语言环境的一个父请求):
1 2 3 4 5 6 7 8 9 10 11
使用ob娱乐下载\组件\HttpKernel\事件\FinishRequestEvent;公共函数onKernelFinishRequest(FinishRequestEvent美元事件){如果(零= = =美元parentRequest=美元这- >requestStack- >getParentRequest ()) {返回;}/ /重置的地区subrequest父请求的区域设置美元这- >setLocale (美元parentRequest);}
执行这个命令来找出哪些听众注册为这个事件及其优先级:
1
美元php bin /控制台调试:事件分配器kernel.finish_request