You are here

protected function UrlMatcher::handleRouteRequirements in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/symfony/routing/Matcher/UrlMatcher.php \Symfony\Component\Routing\Matcher\UrlMatcher::handleRouteRequirements()

Handles specific route requirements.

Parameters

string $pathinfo The path:

string $name The route name:

Route $route The route:

Return value

array The first element represents the status, the second contains additional information

1 call to UrlMatcher::handleRouteRequirements()
UrlMatcher::matchCollection in vendor/symfony/routing/Matcher/UrlMatcher.php
Tries to match a URL with a set of routes.
1 method overrides UrlMatcher::handleRouteRequirements()
RedirectableUrlMatcher::handleRouteRequirements in vendor/symfony/routing/Matcher/RedirectableUrlMatcher.php
Handles specific route requirements.

File

vendor/symfony/routing/Matcher/UrlMatcher.php, line 207

Class

UrlMatcher
UrlMatcher matches URL based on a set of routes.

Namespace

Symfony\Component\Routing\Matcher

Code

protected function handleRouteRequirements($pathinfo, $name, Route $route) {

  // expression condition
  if ($route
    ->getCondition() && !$this
    ->getExpressionLanguage()
    ->evaluate($route
    ->getCondition(), array(
    'context' => $this->context,
    'request' => $this->request,
  ))) {
    return array(
      self::REQUIREMENT_MISMATCH,
      null,
    );
  }

  // check HTTP scheme requirement
  $scheme = $this->context
    ->getScheme();
  $status = $route
    ->getSchemes() && !$route
    ->hasScheme($scheme) ? self::REQUIREMENT_MISMATCH : self::REQUIREMENT_MATCH;
  return array(
    $status,
    null,
  );
}