Barryvdh\Cors\Util\OriginMatcher::matches PHP Method

matches() public static method

public static matches ( $pattern, $origin )
    public static function matches($pattern, $origin)
    {
        if ($pattern === $origin) {
            return true;
        }
        $scheme = parse_url($origin, PHP_URL_SCHEME);
        $host = parse_url($origin, PHP_URL_HOST);
        $port = parse_url($origin, PHP_URL_PORT);
        $schemePattern = static::parseOriginPattern($pattern, PHP_URL_SCHEME);
        $hostPattern = static::parseOriginPattern($pattern, PHP_URL_HOST);
        $portPattern = static::parseOriginPattern($pattern, PHP_URL_PORT);
        $schemeMatches = static::schemeMatches($schemePattern, $scheme);
        $hostMatches = static::hostMatches($hostPattern, $host);
        $portMatches = static::portMatches($portPattern, $port);
        return $schemeMatches && $hostMatches && $portMatches;
    }

Usage Example

Esempio n. 1
0
 private function checkOrigin(Request $request)
 {
     if ($this->options['allowedOrigins'] === true) {
         // allow all '*' flag
         return true;
     }
     $origin = $request->headers->get('Origin');
     foreach ($this->options['allowedOrigins'] as $allowedOrign) {
         if (OriginMatcher::matches($allowedOrign, $origin)) {
             return true;
         }
     }
     return false;
 }
All Usage Examples Of Barryvdh\Cors\Util\OriginMatcher::matches