This route class will transparently inflect the controller and plugin routing parameters, so that requesting /my_controller
is parsed as ['controller' => 'MyController']
$_inflectedDefaults
protected boolean
Underscores the prefix, controller and plugin params before passing them on to the parent class
Parses a string URL into an array. If it matches, it will convert the prefix, controller and plugin keys to their camelized form.
_underscore( array $url )
Helper method for underscoring keys in a URL array.
$url
match( array $url , array $context [] )
Underscores the prefix, controller and plugin params before passing them on to the parent class
$url
$context
optional [] An array of the current request context. Contains information such as the current host, scheme, port, and base directory.
Cake\Routing\Route\Route::match()
parse( string $url , string $method '' )
Parses a string URL into an array. If it matches, it will convert the prefix, controller and plugin keys to their camelized form.
$url
$method
optional '' Cake\Routing\Route\Route::parse()
__construct( string $template , array|string $defaults [] , array $options [] )
Constructor for a Route
_ext
- Defines the extensions used for this route.pass
- Copies the listed parameters into params['pass']._host
- Define the host name pattern if you want this route to only match specific host names. You can use .*
and to create wildcard subdomains/hosts e.g. *.example.com
matches all subdomains on example.com
.$template
$defaults
optional [] $options
optional [] __set_state( array $fields )
Set state magic method to support var_export
This method helps for applications that want to implement router caching.
$fields
Cake\Routing\Route\Route
_matchMethod( array $url )
Check whether or not the URL's HTTP method matches.
$url
_parseArgs( string $args , string $context )
Parse passed parameters into a list of passed args.
Return true if a given named $param's $val matches a given $rule depending on $context. Currently implemented rule types are controller, action and match that can be combined with each other.
$args
$context
_parseExtension( string $url )
Removes the extension from $url if it contains a registered extension. If no registered extension is found, no extension is returned and the URL is returned unmodified.
$url
_persistParams( array $url , array $params )
Apply persistent parameters to a URL array. Persistent parameters are a special key used during route creation to force route parameters to persist when omitted from a URL array.
$url
$params
_writeRoute( )
Builds a route regular expression.
Uses the template, defaults and options properties to compile a regular expression that can be used to parse request strings.
_writeUrl( array $params , array $pass [] , array $query [] )
Converts a matching route array into a URL string.
Composes the string URL using the template used to create the route.
$params
$pass
optional [] $query
optional [] compile( )
Compiles the route's regular expression.
Modifies defaults property so all necessary keys are set and populates $this->names with the named routing elements.
compiled( )
Check if a Route has been compiled into a regular expression.
extensions( null|string|array $extensions null )
Get/Set the supported extensions for this route.
$extensions
optional null getExtensions( )
Get the supported extensions for this route.
getName( )
Get the standardized plugin.controller:action name for a route.
hostMatches( string $host )
Check to see if the host matches the route requirements
$host
parseRequest( Psr\Http\Message\ServerRequestInterface $request )
Checks to see if the given URL can be parsed by this route.
If the route can be parsed an array of parameters will be returned; if not false will be returned.
$request
setExtensions( array $extensions )
Set the supported extensions for this route.
$extensions
protected boolean
Flag for tracking whether or not the defaults have been inflected.
Default values need to be inflected so that they match the inflections that match() will create.
false
© 2005–2017 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.4/class-Cake.Routing.Route.InflectedRoute.html