Interface RouteCollectionInterface

Summary

Fully Qualified Name: CodeIgniter\Router\RouteCollectionInterface

Description

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.

Methods

Name Description Defined By
add() Adds a single route to the collection. RouteCollectionInterface
addPlaceholder() 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. RouteCollectionInterface
get404Override() Returns the 404 Override setting, which can be null, a closure or the controller/string. RouteCollectionInterface
getDefaultController() Returns the name of the default controller. With Namespace. RouteCollectionInterface
getDefaultMethod() Returns the name of the default method to use within the controller. RouteCollectionInterface
getHTTPVerb() Returns the current HTTP Verb being used. RouteCollectionInterface
getRedirectCode() Grabs the HTTP status code from a redirecting Route. RouteCollectionInterface
getRoutes() Returns the raw array of available routes. RouteCollectionInterface
isRedirect() Determines if the route is a redirecting route. RouteCollectionInterface
reverseRoute() Attempts to look up a route based on it's destination. RouteCollectionInterface
set404Override() 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 RouteCollectionInterface
setAutoRoute() 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. RouteCollectionInterface
setDefaultController() Sets the default controller to use when no other controller has been specified. RouteCollectionInterface
setDefaultMethod() Sets the default method to call on the controller when no other method has been set in the route. RouteCollectionInterface
setDefaultNamespace() Sets the default namespace to use for Controllers when no other namespace has been specified. RouteCollectionInterface
setTranslateURIDashes() 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. RouteCollectionInterface
shouldAutoRoute() Returns the flag that tells whether to autoRoute URI against Controllers. RouteCollectionInterface
shouldTranslateURIDashes() Returns the current value of the translateURIDashes setting. RouteCollectionInterface

Method Details

add()

Adds a single route to the collection.

Parameter Name Type Description
$from string
$to array|string
$options array

Returns: mixed

addPlaceholder()

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.

Parameter Name Type Description
$placeholder string|array
$pattern string

Returns: mixed

get404Override()

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

Returns: string|\Closure|null

getDefaultController()

Returns the name of the default controller. With Namespace.

Returns: string

getDefaultMethod()

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

Returns: string

getHTTPVerb()

Returns the current HTTP Verb being used.

Returns: string

getRedirectCode()

Grabs the HTTP status code from a redirecting Route.

Parameter Name Type Description
$from string

Returns: int

getRoutes()

Returns the raw array of available routes.

Returns: mixed

isRedirect()

Determines if the route is a redirecting route.

Parameter Name Type Description
$from string

Returns: bool

reverseRoute()

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);
Parameter Name Type Description
$search string
...$params array
$params

Returns: string|bool

set404Override()

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.

Parameter Name Type Description
$callable callable|null

Returns: \RouteCollectionInterface

setAutoRoute()

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.

Parameter Name Type Description
$value bool

Returns: \RouteCollectionInterface

setDefaultController()

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

Parameter Name Type Description
$value
$value

Returns: mixed

setDefaultMethod()

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

Parameter Name Type Description
$value
$value

Returns: mixed

setDefaultNamespace()

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

Parameter Name Type Description
$value
$value

Returns: mixed

setTranslateURIDashes()

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.

...

Parameter Name Type Description
$value bool

Returns: mixed

shouldAutoRoute()

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

Returns: bool

shouldTranslateURIDashes()

Returns the current value of the translateURIDashes setting.

Returns: mixed

Top