Redirect route will perform an immediate redirect. Redirect routes are useful when you want to have Routing layer redirects occur in your application, for when URLs move.
Redirection is signalled by an exception that halts route matching and defines the redirect URL and status code.
$redirect
public array|string
$response
public Parses a string URL into an array. Parsed URLs will result in an automatic redirection.
__construct( string $template , array|string $defaults [] , array $options [] )
Constructor
$template
$defaults
optional [] $options
optional [] Cake\Routing\Route\Route::__construct()
match( array $url , array $context [] )
There is no reverse routing redirection routes.
$url
$context
optional [] Cake\Routing\Route\Route::match()
parse( string $url , string $method '' )
Parses a string URL into an array. Parsed URLs will result in an automatic redirection.
$url
$method
optional '' Cake\Routing\Exception\RedirectException
An exception is raised on successful match. This is used to halt route matching and signal to the middleware that a redirect should happen.
Cake\Routing\Route\Route::parse()
__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.
getMiddleware( )
Get the names of the middleware that should be applied to 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
setHost( string $host )
Set host requirement
$host
setMethods( array $methods )
Set the accepted HTTP methods for this route.
$methods
setMiddleware( array $middleware )
Set the names of the middleware that should be applied to this route.
$middleware
The list of middleware names to apply to this route. Middleware names will not be checked until the route is matched.
setPass( array $names )
Set the names of parameters that will be converted into passed parameters
$names
setPatterns( array $patterns )
Set regexp patterns for routing parameters
If any of your patterns contain multibyte values, the multibytePattern
mode will be enabled.
$patterns
setPersist( array $names )
Set the names of parameters that will persisted automatically
Persistent parametesr allow you to define which route parameters should be automatically included when generating new URLs. You can override persistent parameters by redefining them in a URL or remove them by setting the persistent parameter to false
.
// remove a persistent 'date' parameter Router::url(['date' => false', ...]);
$names
public array|string
The location to redirect to. Either a string or a CakePHP array URL.
public Cake\Http\Response
A Response object
© 2005–2018 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.5/class-Cake.Routing.Route.RedirectRoute.html