/** * Call a given filter with the parameters. * * @param string $name * @param \Symfony\Component\HttpFoundation\Request $request * @param array $params * @return mixed */ public function callFilter($name, Request $request, array $params = array()) { if (!$this->router->filtersEnabled()) { return; } $merge = array($this->router->getCurrentRoute(), $request); $params = array_merge($merge, $params); // Next we will parse the filter name to extract out any parameters and adding // any parameters specified in a filter name to the end of the lists of our // parameters, since the ones at the beginning are typically very static. list($name, $params) = $this->parseFilter($name, $params); if (!is_null($callable = $this->router->getFilter($name))) { return call_user_func_array($callable, $params); } }