\CodeIgniter\RouterRouteCollectionInterface

Interface RouteCollectionInterface

A Route Collection's sole job is to hold a series of routes. The required number of methods is kept very small on purpose, but implementors may add a number of additional methods to customize how the routes are defined.

The RouteCollection provides the Router with the routes so that it can determine which controller should be ran.

Summary

Methods
Constants
add()
addPlaceholder()
setDefaultNamespace()
setDefaultController()
setDefaultMethod()
setTranslateURIDashes()
setAutoRoute()
set404Override()
get404Override()
getDefaultController()
getDefaultMethod()
shouldTranslateURIDashes()
shouldAutoRoute()
getRoutes()
getHTTPVerb()
reverseRoute()
isRedirect()
getRedirectCode()
No constants found
No protected methods found
N/A
No private methods found
N/A

Methods

add()

add(string  $from, array|string  $to, array  $options = null) : mixed

Adds a single route to the collection.

Parameters

string $from
array|string $to
array $options

Returns

mixed

addPlaceholder()

addPlaceholder(string|array  $placeholder, string  $pattern = null) : mixed

Registers a new constraint with the system. Constraints are used by the routes as placeholders for regular expressions to make defining the routes more human-friendly.

You can pass an associative array as $placeholder, and have multiple placeholders added at once.

Parameters

string|array $placeholder
string $pattern

Returns

mixed

setDefaultNamespace()

setDefaultNamespace(  $value) : mixed

Sets the default namespace to use for Controllers when no other namespace has been specified.

Parameters

$value

Returns

mixed

setDefaultController()

setDefaultController(  $value) : mixed

Sets the default controller to use when no other controller has been specified.

Parameters

$value

Returns

mixed

setDefaultMethod()

setDefaultMethod(  $value) : mixed

Sets the default method to call on the controller when no other method has been set in the route.

Parameters

$value

Returns

mixed

setTranslateURIDashes()

setTranslateURIDashes(boolean  $value) : mixed

Tells the system whether to convert dashes in URI strings into underscores. In some search engines, including Google, dashes create more meaning and make it easier for the search engine to find words and meaning in the URI for better SEO. But it doesn't work well with PHP method names.

...

Parameters

boolean $value

Returns

mixed

setAutoRoute()

setAutoRoute(boolean  $value) : \CodeIgniter\Router\RouteCollectionInterface

If TRUE, the system will attempt to match the URI against Controllers by matching each segment against folders/files in APPPATH/Controllers, when a match wasn't found against defined routes.

If FALSE, will stop searching and do NO automatic routing.

Parameters

boolean $value

Returns

\CodeIgniter\Router\RouteCollectionInterface

set404Override()

set404Override(callable|null  $callable = null) : \CodeIgniter\Router\RouteCollectionInterface

Sets the class/method that should be called if routing doesn't find a match. It can be either a closure or the controller/method name exactly like a route is defined: Users::index

This setting is passed to the Router class and handled there.

Parameters

callable|null $callable

Returns

\CodeIgniter\Router\RouteCollectionInterface

get404Override()

get404Override() : string|\Closure|null

Returns the 404 Override setting, which can be null, a closure or the controller/string.

Returns

string|\Closure|null

getDefaultController()

getDefaultController() : string

Returns the name of the default controller. With Namespace.

Returns

string

getDefaultMethod()

getDefaultMethod() : string

Returns the name of the default method to use within the controller.

Returns

string

shouldTranslateURIDashes()

shouldTranslateURIDashes() : mixed

Returns the current value of the translateURIDashes setting.

Returns

mixed

shouldAutoRoute()

shouldAutoRoute() : boolean

Returns the flag that tells whether to autoRoute URI against Controllers.

Returns

boolean

getRoutes()

getRoutes() : mixed

Returns the raw array of available routes.

Returns

mixed

getHTTPVerb()

getHTTPVerb() : string

Returns the current HTTP Verb being used.

Returns

string

reverseRoute()

reverseRoute(string  $search, array  ...$params) : string|false

Attempts to look up a route based on it's destination.

If a route exists:

 'path/(:any)/(:any)' => 'Controller::method/$1/$2'

This method allows you to know the Controller and method and get the route that leads to it.

 // Equals 'path/$param1/$param2'
 reverseRoute('Controller::method', $param1, $param2);

Parameters

string $search
array $params variadic

Returns

string|false

isRedirect()

isRedirect(string  $from) : boolean

Determines if the route is a redirecting route.

Parameters

string $from

Returns

boolean

getRedirectCode()

getRedirectCode(string  $from) : integer

Grabs the HTTP status code from a redirecting Route.

Parameters

string $from

Returns

integer