php – 在Symfony中:如何从过滤器链中排除模块

前端之家收集整理的这篇文章主要介绍了php – 在Symfony中:如何从过滤器链中排除模块前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个自定义过滤器做一些东西.

我希望特定模块不包含在过滤器链中.换句话说,对于这个模块,我希望我的自定义过滤器不在此模块上执行并执行其他模块.

我也使用自定义过滤器,在此过滤器中,您可以检索当前模块:
<?PHP

class customFilter extends sfFilter
{
  public function execute ($filterChain)
  {
    $context = $this->getContext();

    if ('moduleName' == $context->getModuleName())
    {
      // jump to the next filter
      return $filterChain->execute();
    }

    // other stuff
  }
}

否则,您还可以在filters.yml文件中提供已排除的模块:

customFilter:
  class: customFilter
  param:
    module_excluded: moduleName

在课堂上:

<?PHP

class customFilter extends sfFilter
{
  public function execute ($filterChain)
  {
    $context = $this->getContext();

    if ($this->getParameter('module_excluded') == $context->getModuleName())
    {
      // jump to the next filter
      return $filterChain->execute();
    }

    // other stuff
  }
}

猜你在找的PHP相关文章