Router
    
            
            in package
            
        
    
            
            implements
                            JsonSerializable                    
    
    
        
            Class Router.
Interfaces, Classes, Traits and Enums
- JsonSerializable
Table of Contents
- $autoMethods : bool
- $autoOptions : bool
- $collections : array<string|int, mixed>
- $debugCollector : RoutingCollector
- $defaultRouteActionMethod : string
- $defaultRouteNotFound : Closure|string
- $language : Language
- $matchedCollection : RouteCollection|null
- $matchedOrigin : string|null
- $matchedOriginArguments : array<string|int, mixed>
- $matchedPath : string|null
- $matchedPathArguments : array<string|int, mixed>
- $matchedRoute : Route|null
- $placeholders : array<string|int, mixed>
- $response : Response
- __construct() : mixed
- Router constructor.
- __get() : mixed
- addPlaceholder() : static
- Adds Router placeholders.
- fillPlaceholders() : string
- Fills argument values into a string with placeholders.
- getCollections() : array<int, RouteCollection>
- Gets all Route Collections.
- getDebugCollector() : RoutingCollector|null
- getDefaultRouteActionMethod() : string
- Gets the default route action method.
- getLanguage() : Language
- getMatchedCollection() : RouteCollection|null
- Gets the matched Route Collection.
- getMatchedOrigin() : string|null
- Gets the matched URL Origin.
- getMatchedOriginArguments() : array<int, string>
- Gets the matched URL Origin arguments.
- getMatchedPath() : string|null
- Gets the matched URL Path.
- getMatchedPathArguments() : array<int, string>
- Gets the matched URL Path arguments.
- getMatchedRoute() : Route|null
- Gets the matched Route.
- getMatchedUrl() : string|null
- Gets the matched URL.
- getNamedRoute() : Route
- Gets a named route.
- getPlaceholders() : array<string, string>
- Gets all Router placeholders.
- getResponse() : Response
- Gets the HTTP Response instance.
- getRouteNotFound() : Route
- Gets the Route Not Found.
- getRoutes() : array<string, array<string|int, Route>>
- Gets all routes, except the not found.
- hasNamedRoute() : bool
- Tells if it has a named route.
- isAutoMethods() : bool
- Tells if auto methods is enabled.
- isAutoOptions() : bool
- Tells if auto options is enabled.
- jsonSerialize() : array<string, mixed>
- match() : Route
- Match HTTP Method and URL against RouteCollections to process the request.
- replacePlaceholders() : string
- Replaces string placeholders with patterns or patterns with placeholders.
- serve() : static
- Serves a RouteCollection to a specific Origin.
- setAutoMethods() : static
- Enable/disable the feature of auto-detect and show HTTP allowed methods via the Allow header when a route with the requested method does not exist.
- setAutoOptions() : static
- Enable/disable the feature of auto-detect and show HTTP allowed methods via the Allow header when the Request has the OPTIONS method.
- setDebugCollector() : static
- setDefaultRouteActionMethod() : static
- Set the class method name to be called when a Route action is set without a method.
- setDefaultRouteNotFound() : static
- Sets the Default Route Not Found action.
- setLanguage() : static
- addCollection() : static
- addServedCollection() : static
- getAllowedMethods() : array<int, string>
- getAlternativeRoute() : Route
- getDefaultRouteNotFound() : Route
- getRouteWithAllowHeader() : Route|null
- makeMatchedRoute() : Route
- makePath() : string
- Creates a path without a trailing slash to be able to match both with and without a slash at the end.
- matchCollection() : RouteCollection|null
- matchRoute() : Route|null
- setMatchedCollection() : static
- setMatchedOrigin() : static
- setMatchedOriginArguments() : static
- setMatchedPath() : static
- setMatchedPathArguments() : static
- setMatchedRoute() : static
Properties
$autoMethods
    protected
        bool
    $autoMethods
     = false
        
        
    
$autoOptions
    protected
        bool
    $autoOptions
     = false
        
        
    
$collections
    protected
        array<string|int, mixed>
    $collections
     = []
    
    
    
$debugCollector
    protected
        RoutingCollector
    $debugCollector
    
        
        
    
$defaultRouteActionMethod
    protected
        string
    $defaultRouteActionMethod
     = 'index'
        
        
    
$defaultRouteNotFound
    protected
        Closure|string
    $defaultRouteNotFound
    
        
        
    
$language
    protected
        Language
    $language
    
        
        
    
$matchedCollection
    protected
        RouteCollection|null
    $matchedCollection
     = null
        
        
    
$matchedOrigin
    protected
        string|null
    $matchedOrigin
     = null
        
        
    
$matchedOriginArguments
    protected
        array<string|int, mixed>
    $matchedOriginArguments
     = []
    
    
    
$matchedPath
    protected
        string|null
    $matchedPath
     = null
        
        
    
$matchedPathArguments
    protected
        array<string|int, mixed>
    $matchedPathArguments
     = []
    
    
    
$matchedRoute
    protected
        Route|null
    $matchedRoute
     = null
        
        
    
$placeholders
    protected
    static    array<string|int, mixed>
    $placeholders
     = [
    '{alpha}' => '([a-zA-Z]+)',
    '{alphanum}' => '([a-zA-Z0-9]+)',
    '{any}' => '(.*)',
    '{hex}' => '([[:xdigit:]]+)',
    '{int}' => '([0-9]{1,18}+)',
    '{md5}' => '([a-f0-9]{32}+)',
    '{num}' => '([0-9]+)',
    '{port}' => '([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])',
    '{scheme}' => '(https?)',
    '{segment}' => '([^/]+)',
    '{slug}' => '([a-z0-9_-]+)',
    '{subdomain}' => '([^.]+)',
    //'{subdomain}' => '([A-Za-z0-9](?:[a-zA-Z0-9\-]{0,61}[A-Za-z0-9])?)',
    '{title}' => '([a-zA-Z0-9_-]+)',
    '{uuid}' => '([0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}+)',
]
    
    
    
$response
    protected
        Response
    $response
    
        
        
    
Methods
__construct()
Router constructor.
    public
                __construct(Response $response[, Language|null $language = null ]) : mixed
    
        Parameters
- $response : Response
- $language : Language|null = null
Return values
mixed —__get()
    public
                __get(string $property) : mixed
        
        Parameters
- $property : string
Return values
mixed —addPlaceholder()
Adds Router placeholders.
    public
                addPlaceholder(array<string, string>|string $placeholder[, string|null $pattern = null ]) : static
    
        Parameters
- $placeholder : array<string, string>|string
- $pattern : string|null = null
Return values
static —fillPlaceholders()
Fills argument values into a string with placeholders.
    public
                fillPlaceholders(string $string, string ...$arguments) : string
    
        Parameters
- $string : string
- 
                    The input string 
- $arguments : string
- 
                    Values to fill the string placeholders 
Tags
Return values
string —The string with argument values in place of placeholders
getCollections()
Gets all Route Collections.
    public
                getCollections() : array<int, RouteCollection>
    
    
    
        Return values
array<int, RouteCollection> —getDebugCollector()
    public
                getDebugCollector() : RoutingCollector|null
        
    
    
        Return values
RoutingCollector|null —getDefaultRouteActionMethod()
Gets the default route action method.
    public
                getDefaultRouteActionMethod() : string
        Normally, it is "index".
Tags
Return values
string —getLanguage()
    public
                getLanguage() : Language
        
    
    
        Return values
Language —getMatchedCollection()
Gets the matched Route Collection.
    public
                getMatchedCollection() : RouteCollection|null
        Note: Will return null if no URL Origin was matched in a Route Collection
Return values
RouteCollection|null —getMatchedOrigin()
Gets the matched URL Origin.
    public
                getMatchedOrigin() : string|null
    
    
    
        Return values
string|null —getMatchedOriginArguments()
Gets the matched URL Origin arguments.
    public
                getMatchedOriginArguments() : array<int, string>
    
    
    
        Return values
array<int, string> —getMatchedPath()
Gets the matched URL Path.
    public
                getMatchedPath() : string|null
    
    
    
        Return values
string|null —getMatchedPathArguments()
Gets the matched URL Path arguments.
    public
                getMatchedPathArguments() : array<int, string>
    
    
    
        Return values
array<int, string> —getMatchedRoute()
Gets the matched Route.
    public
                getMatchedRoute() : Route|null
    
    
    
        Return values
Route|null —getMatchedUrl()
Gets the matched URL.
    public
                getMatchedUrl() : string|null
        Note: This method does not return the URL query. If it is needed, get with Request::getUrl().
Return values
string|null —getNamedRoute()
Gets a named route.
    public
                getNamedRoute(string $name) : Route
    
        Parameters
- $name : string
Tags
Return values
Route —getPlaceholders()
Gets all Router placeholders.
    public
                getPlaceholders() : array<string, string>
    
    
    
        Return values
array<string, string> —getResponse()
Gets the HTTP Response instance.
    public
                getResponse() : Response
    
    
    
        Return values
Response —getRouteNotFound()
Gets the Route Not Found.
    public
                getRouteNotFound() : Route
        Must be called after Router::match() and will return the Route Not Found from the matched collection or the Default Route Not Found from the router.
Tags
Return values
Route —getRoutes()
Gets all routes, except the not found.
    public
                getRoutes() : array<string, array<string|int, Route>>
    
    
    
        Return values
array<string, array<string|int, Route>> —The HTTP Methods as keys and its Routes as values
hasNamedRoute()
Tells if it has a named route.
    public
                hasNamedRoute(string $name) : bool
    
        Parameters
- $name : string
Return values
bool —isAutoMethods()
Tells if auto methods is enabled.
    public
                isAutoMethods() : bool
    
    
    
    Tags
Return values
bool —isAutoOptions()
Tells if auto options is enabled.
    public
                isAutoOptions() : bool
    
    
    
    Tags
Return values
bool —jsonSerialize()
    public
                jsonSerialize() : array<string, mixed>
    
    
    
        Return values
array<string, mixed> —match()
Match HTTP Method and URL against RouteCollections to process the request.
    public
                match() : Route
    
    
    
    Tags
Return values
Route —Always returns a Route, even if it is the Route Not Found
replacePlaceholders()
Replaces string placeholders with patterns or patterns with placeholders.
    public
                replacePlaceholders(string $string[, bool $flip = false ]) : string
    
        Parameters
- $string : string
- 
                    The string with placeholders or patterns 
- $flip : bool = false
- 
                    Set true to replace patterns with placeholders 
Return values
string —serve()
Serves a RouteCollection to a specific Origin.
    public
                serve(string|null $origin, callable $callable[, string|null $collectionName = null ]) : static
    
        Parameters
- $origin : string|null
- 
                    URL Origin. A string in the following format: {scheme}://{hostname}[:{port}]. Null to auto-detect.
- $callable : callable
- 
                    A function receiving an instance of RouteCollection as the first parameter 
- $collectionName : string|null = null
- 
                    The RouteCollection name 
Return values
static —setAutoMethods()
Enable/disable the feature of auto-detect and show HTTP allowed methods via the Allow header when a route with the requested method does not exist.
    public
                setAutoMethods([bool $enabled = true ]) : static
        A response with code 405 "Method Not Allowed" will trigger.
Parameters
- $enabled : bool = true
- 
                    true to enable, false to disable 
Tags
Return values
static —setAutoOptions()
Enable/disable the feature of auto-detect and show HTTP allowed methods via the Allow header when the Request has the OPTIONS method.
    public
                setAutoOptions([bool $enabled = true ]) : static
    
        Parameters
- $enabled : bool = true
- 
                    true to enable, false to disable 
Tags
Return values
static —setDebugCollector()
    public
                setDebugCollector(RoutingCollector $debugCollector) : static
        
        Parameters
- $debugCollector : RoutingCollector
Return values
static —setDefaultRouteActionMethod()
Set the class method name to be called when a Route action is set without a method.
    public
                setDefaultRouteActionMethod(string $action) : static
    
        Parameters
- $action : string
Return values
static —setDefaultRouteNotFound()
Sets the Default Route Not Found action.
    public
                setDefaultRouteNotFound(Closure|string $action) : static
    
        Parameters
- $action : Closure|string
- 
                    the function to run when no Route path is found 
Return values
static —setLanguage()
    public
                setLanguage([Language|null $language = null ]) : static
        
        Parameters
- $language : Language|null = null
Return values
static —addCollection()
    protected
                addCollection(RouteCollection $collection) : static
    
        Parameters
- $collection : RouteCollection
Return values
static —addServedCollection()
    protected
                addServedCollection(string|null $origin, callable $callable[, string|null $collectionName = null ]) : static
        
        Parameters
- $origin : string|null
- $callable : callable
- $collectionName : string|null = null
Return values
static —getAllowedMethods()
    protected
                getAllowedMethods(RouteCollection $collection) : array<int, string>
    
        Parameters
- $collection : RouteCollection
Return values
array<int, string> —getAlternativeRoute()
    protected
                getAlternativeRoute(string $method, RouteCollection $collection) : Route
        
        Parameters
- $method : string
- $collection : RouteCollection
Return values
Route —getDefaultRouteNotFound()
    protected
                getDefaultRouteNotFound() : Route
        
    
    
        Return values
Route —getRouteWithAllowHeader()
    protected
                getRouteWithAllowHeader(RouteCollection $collection, int $code) : Route|null
        
        Parameters
- $collection : RouteCollection
- $code : int
Return values
Route|null —makeMatchedRoute()
    protected
                makeMatchedRoute() : Route
        
    
    
        Return values
Route —makePath()
Creates a path without a trailing slash to be able to match both with and without a slash at the end.
    protected
                makePath(string $path) : string
    
        Parameters
- $path : string
Tags
Return values
string —matchCollection()
    protected
                matchCollection(string $origin) : RouteCollection|null
        
        Parameters
- $origin : string
Return values
RouteCollection|null —matchRoute()
    protected
                matchRoute(string $method, RouteCollection $collection, string $path) : Route|null
        
        Parameters
- $method : string
- $collection : RouteCollection
- $path : string
Return values
Route|null —setMatchedCollection()
    protected
                setMatchedCollection(RouteCollection $matchedCollection) : static
        
        Parameters
- $matchedCollection : RouteCollection
Return values
static —setMatchedOrigin()
    protected
                setMatchedOrigin(string $origin) : static
    
        Parameters
- $origin : string
Return values
static —setMatchedOriginArguments()
    protected
                setMatchedOriginArguments(array<int, string> $arguments) : static
    
        Parameters
- $arguments : array<int, string>
Return values
static —setMatchedPath()
    protected
                setMatchedPath(string $path) : static
    
        Parameters
- $path : string
Return values
static —setMatchedPathArguments()
    protected
                setMatchedPathArguments(array<int, string> $arguments) : static
    
        Parameters
- $arguments : array<int, string>
Return values
static —setMatchedRoute()
    protected
                setMatchedRoute(Route $route) : static
    
        Parameters
- $route : Route
 Aplus Framework Docs
        Aplus Framework Docs