当前位置: 首页>>代码示例>>PHP>>正文


PHP FilterControllerEvent::stopPropagation方法代码示例

本文整理汇总了PHP中Symfony\Component\HttpKernel\Event\FilterControllerEvent::stopPropagation方法的典型用法代码示例。如果您正苦于以下问题:PHP FilterControllerEvent::stopPropagation方法的具体用法?PHP FilterControllerEvent::stopPropagation怎么用?PHP FilterControllerEvent::stopPropagation使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Symfony\Component\HttpKernel\Event\FilterControllerEvent的用法示例。


在下文中一共展示了FilterControllerEvent::stopPropagation方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: onKernelController

 /**
  * Handles HTTP validation headers.
  */
 public function onKernelController(FilterControllerEvent $event)
 {
     $request = $event->getRequest();
     if (!($configuration = $request->attributes->get('_cache'))) {
         return;
     }
     $response = new Response();
     $lastModifiedDate = '';
     if ($configuration->getLastModified()) {
         $lastModifiedDate = $this->getExpressionLanguage()->evaluate($configuration->getLastModified(), $request->attributes->all());
         $response->setLastModified($lastModifiedDate);
     }
     $etag = '';
     if ($configuration->getETag()) {
         $etag = hash('sha256', $this->getExpressionLanguage()->evaluate($configuration->getETag(), $request->attributes->all()));
         $response->setETag($etag);
     }
     if ($response->isNotModified($request)) {
         $event->setController(function () use($response) {
             return $response;
         });
         $event->stopPropagation();
     } else {
         if ($etag) {
             $this->etags[$request] = $etag;
         }
         if ($lastModifiedDate) {
             $this->lastModifiedDates[$request] = $lastModifiedDate;
         }
     }
 }
开发者ID:nicolas-grekas,项目名称:SensioFrameworkExtraBundle,代码行数:34,代码来源:HttpCacheListener.php

示例2: filter

 public function filter(FilterControllerEvent $event, Response $response)
 {
     if ($this->check($response)) {
         $event->setController(function () use($response) {
             return $response;
         });
         $event->stopPropagation();
     }
 }
开发者ID:geschke,项目名称:legacy-integration-bundle,代码行数:9,代码来源:PassthruLegacyResponseFilter.php

示例3: onKernelController

 /**
  * Searches for sluggable objects in the route parameters and checks slugs if necessary.
  *
  * If an invalid slug is detected, then the user will be redirected to the URLs with the valid slug.
  *
  * @param FilterControllerEvent $event
  */
 public function onKernelController(FilterControllerEvent $event)
 {
     $attributes = $event->getRequest()->attributes;
     foreach ($attributes as $name => $value) {
         if ($this->hasValidSlug($attributes, $name)) {
             continue;
         }
         $event->stopPropagation();
         // Invalid slug passed. Redirect to a URL with valid slug.
         $event->setController(function () use($event, $name) {
             return $this->createRedirectFor($event->getRequest(), $name);
         });
         break;
     }
 }
开发者ID:webfactory,项目名称:slug-validation-bundle,代码行数:22,代码来源:ValidateSlugListener.php

示例4: handleMaintenanceState

 /**
  * Handle switching the controller and action to the maintenance state.
  */
 private function handleMaintenanceState()
 {
     $this->event->stopPropagation();
     $this->event->setController([$this->maintenanceController, 'displayMaintenanceAction']);
 }
开发者ID:scr-be,项目名称:mantle-bundle,代码行数:8,代码来源:MaintenanceListener.php


注:本文中的Symfony\Component\HttpKernel\Event\FilterControllerEvent::stopPropagation方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。