class Router (View source)

Cherche un objet et une méthode à exécuter en fonction de la requête HTTP.

Properties

protected array $routes Routes à parser.
protected object[] $objects Objets à appeler.
protected RequestInterface $currentRequest Requête courante
protected array $settings Configuration des routes.

Methods

__construct(array $routes, array $obj = [])

Construit le router avec la liste des routes et les objets à appeler.

array|null
parse(RequestInterface $request)

Appel un objet et sa méthode en fonction de la requête.

mixed
execute(array $route, RequestInterface $request = null)

Exécute la méthode d'un contrôleur à partir d'une route et de la requête.

string
relplaceSlash(string $str)

Remplace les / par sa valeur encodé.

string
getRoute(string $name, array $params = null)

Recherche une route à partir de son nom.

string
getBasePath()

Retourne la base de votre URL.

$this
setSettings(array $settings)

Les configurations possibles pour le router.

$this
setObjects(array $obj)

Ajout des objets à instancier lors de l'appel.

$this
setRequest(RequestInterface $request)

Ajoute une nouvelle requête courante.

bool
isRewrite()

Si le module de réécriture est activé et si la configuration l'exige.

string
parseQueryFromRequest(RequestInterface $request = null)

Parse les paramètres de la requête et retourne la chaine qui servira à

array
parseParam(string $route, string $query, array $param)

Cherche dans la requête les paramètres présents dans la configuration des routes pour l'appel dynamique de la fonction.

Details

__construct(array $routes, array $obj = [])

Construit le router avec la liste des routes et les objets à appeler.

Parameters

array $routes Liste des routes.
array $obj Liste des instances d'objet.

array|null parse(RequestInterface $request)

Appel un objet et sa méthode en fonction de la requête.

Parameters

RequestInterface $request

Return Value

array|null La route ou null si non trouvée.

mixed execute(array $route, RequestInterface $request = null)

Exécute la méthode d'un contrôleur à partir d'une route et de la requête.

Parameters

array $route
RequestInterface $request

Return Value

mixed Le retour de la méthode appelée.

string relplaceSlash(string $str)

Remplace les / par sa valeur encodé.

Parameters

string $str

Return Value

string

string getRoute(string $name, array $params = null)

Recherche une route à partir de son nom.

Parameters

string $name Nom de la route.
array $params Variables requises par la route.

Return Value

string

string getBasePath()

Retourne la base de votre URL.

Return Value

string L'URL.

$this setSettings(array $settings)

Les configurations possibles pour le router.

Parameters

array $settings

Return Value

$this

$this setObjects(array $obj)

Ajout des objets à instancier lors de l'appel.

Parameters

array $obj

Return Value

$this

$this setRequest(RequestInterface $request)

Ajoute une nouvelle requête courante.

Parameters

RequestInterface $request

Return Value

$this

bool isRewrite()

Si le module de réécriture est activé et si la configuration l'exige.

Return Value

bool Si l'écriture d'url est possible.

protected string parseQueryFromRequest(RequestInterface $request = null)

Parse les paramètres de la requête et retourne la chaine qui servira à

Parameters

RequestInterface $request

Return Value

string

Exceptions

InvalidArgumentException

protected array parseParam(string $route, string $query, array $param)

Cherche dans la requête les paramètres présents dans la configuration des routes pour l'appel dynamique de la fonction.

Parameters

string $route Route qui déclenche l'appel au contrôleur.
string $query Le paramètre de la requête.
array $param Clés de comparaison à chercher dans la route.

Return Value

array Paramètres présents dans la requête.