/** * parseHostVars * * @param RouteInterface $route * * @return array */ private static function parseHostVars(RouteInterface $route) { if (null === ($host = $route->getHost())) { return ['expression' => null, 'tokens' => []]; } return self::transpilePattern($host, true, $route->getConstraints(), $route->getDefaults()); }
/** * getMatchedParams * * @param RouteInterface $route * @param array $matches * * @return array */ private function getMatchedVars(RouteInterface $route, array $matches) { $vars = $route->getContext()->getVars(); $params = array_merge($route->getDefaults(), array_filter(array_map([$this, 'getValue'], array_intersect_key($matches, $t = array_combine($vars, array_pad([], count($vars), null)))))); return array_intersect_key($params, $t); }