mirror of
https://git.friendi.ca/friendica/friendica-addons.git
synced 2024-09-15 03:15:21 +00:00
20862be7d0
- slim/slim: ^3.1 - symfony/expression-language: ^3.4 - fxp/composer-asset-plugin: ~1.3 - bower-asset/vue: ^2.5 - bower-asset/vue-resource: ^1.5
47 lines
921 B
PHP
47 lines
921 B
PHP
<?php
|
|
|
|
namespace FastRoute;
|
|
|
|
class Route
|
|
{
|
|
/** @var string */
|
|
public $httpMethod;
|
|
|
|
/** @var string */
|
|
public $regex;
|
|
|
|
/** @var array */
|
|
public $variables;
|
|
|
|
/** @var mixed */
|
|
public $handler;
|
|
|
|
/**
|
|
* Constructs a route (value object).
|
|
*
|
|
* @param string $httpMethod
|
|
* @param mixed $handler
|
|
* @param string $regex
|
|
* @param array $variables
|
|
*/
|
|
public function __construct($httpMethod, $handler, $regex, $variables)
|
|
{
|
|
$this->httpMethod = $httpMethod;
|
|
$this->handler = $handler;
|
|
$this->regex = $regex;
|
|
$this->variables = $variables;
|
|
}
|
|
|
|
/**
|
|
* Tests whether this route matches the given string.
|
|
*
|
|
* @param string $str
|
|
*
|
|
* @return bool
|
|
*/
|
|
public function matches($str)
|
|
{
|
|
$regex = '~^' . $this->regex . '$~';
|
|
return (bool) preg_match($regex, $str);
|
|
}
|
|
}
|