Class UrlHelper
UrlHelper class for generating URLs.
- Cake\View\Helper implements Cake\Event\EventListenerInterface uses Cake\Core\InstanceConfigTrait
- Cake\View\Helper\UrlHelper
Inherited Properties
Method Summary
-
_encodeUrl() protected
Encodes a URL for use in HTML attributes. -
_inflectThemeName() protected
Inflect the theme name to its underscored version. -
assetTimestamp() public
Adds a timestamp to a file based resource based on the value of
Asset.timestamp
in Configure. If Asset.timestamp is true and debug is true, or Asset.timestamp === 'force' a timestamp will be added. -
assetUrl() public
Generates URL for given asset file. -
build() public
Returns a URL based on provided parameters. -
css() public
Generates URL for given CSS file. -
image() public
Generates URL for given image file. -
implementedEvents() public
Event listeners. -
script() public
Generates URL for given javascript file. -
webroot() public
Checks if a file exists when theme is used, if no file is found default location is returned
Method Detail
_encodeUrl() protected ¶
_encodeUrl( string $url )
Encodes a URL for use in HTML attributes.
Parameters
- string $url
- The URL to encode.
Returns
The URL encoded for both URL & HTML contexts.
_inflectThemeName() protected ¶
_inflectThemeName( string $name )
Inflect the theme name to its underscored version.
Parameters
- string $name
- Name of the theme which should be inflected.
Returns
Inflected name of the theme
assetTimestamp() public ¶
assetTimestamp( string $path , boolean|string $timestamp null )
Adds a timestamp to a file based resource based on the value of Asset.timestamp
in
Configure. If Asset.timestamp is true and debug is true, or Asset.timestamp === 'force'
a timestamp will be added.
Parameters
- string $path
- The file path to timestamp, the path must be inside WWW_ROOT
- boolean|string $timestamp optional null
- If set will overrule the value of
Asset.timestamp
in Configure.
Returns
Path with a timestamp added, or not.
assetUrl() public ¶
assetUrl( string|array $path , array $options [] )
Generates URL for given asset file.
Depending on options passed provides full URL with domain name. Also calls
Helper::assetTimestamp()
to add timestamp to local files.
Options:
fullBase
Boolean true or a string (e.g. https://example) to return full URL with protocol and domain name.pathPrefix
Path prefix for relative URLsext
Asset extension to appendplugin
False value will prevent parsing path as a plugintimestamp
Overrides the value ofAsset.timestamp
in Configure. Set to false to skip timestamp generation. Set to true to apply timestamps when debug is true. Set to 'force' to always enable timestamping regardless of debug value.
Parameters
- string|array $path
- Path string or URL array
- array $options optional []
- Options array.
Returns
Generated URL
build() public ¶
build( string|array|null $url null , array|boolean $options false )
Returns a URL based on provided parameters.
Options:
escape
: If false, the URL will be returned unescaped, do only use if it is manually escaped afterwards before being displayed.fullBase
: If true, the full base URL will be prepended to the result
Parameters
- string|array|null $url optional null
Either a relative string URL like
/products/view/23
or an array of URL parameters. Using an array for URLs will allow you to leverage the reverse routing features of CakePHP.- array|boolean $options optional false
- Array of options; bool
full
for BC reasons.
Returns
Full translated URL with base path.
css() public ¶
css( string|array $path , array $options [] )
Generates URL for given CSS file.
Depending on options passed provides full URL with domain name. Also calls
Helper::assetTimestamp()
to add timestamp to local files.
Parameters
- string|array $path
- Path string or URL array
- array $options optional []
Options array. Possible keys:
fullBase
Return full URL with domain namepathPrefix
Path prefix for relative URLsext
Asset extension to appendplugin
False value will prevent parsing path as a plugintimestamp
Overrides the value ofAsset.timestamp
in Configure. Set to false to skip timestamp generation. Set to true to apply timestamps when debug is true. Set to 'force' to always enable timestamping regardless of debug value.
Returns
Generated URL
image() public ¶
image( string|array $path , array $options [] )
Generates URL for given image file.
Depending on options passed provides full URL with domain name. Also calls
Helper::assetTimestamp()
to add timestamp to local files.
Parameters
- string|array $path
- Path string or URL array
- array $options optional []
Options array. Possible keys:
fullBase
Return full URL with domain namepathPrefix
Path prefix for relative URLsplugin
False value will prevent parsing path as a plugintimestamp
Overrides the value ofAsset.timestamp
in Configure. Set to false to skip timestamp generation. Set to true to apply timestamps when debug is true. Set to 'force' to always enable timestamping regardless of debug value.
Returns
Generated URL
script() public ¶
script( string|array $path , array $options [] )
Generates URL for given javascript file.
Depending on options passed provides full URL with domain name. Also calls
Helper::assetTimestamp()
to add timestamp to local files.
Parameters
- string|array $path
- Path string or URL array
- array $options optional []
Options array. Possible keys:
fullBase
Return full URL with domain namepathPrefix
Path prefix for relative URLsext
Asset extension to appendplugin
False value will prevent parsing path as a plugintimestamp
Overrides the value ofAsset.timestamp
in Configure. Set to false to skip timestamp generation. Set to true to apply timestamps when debug is true. Set to 'force' to always enable timestamping regardless of debug value.
Returns
Generated URL
Methods inherited from Cake\View\Helper
__call() public ¶
__call( string $method , array $params )
Provide non fatal errors on missing method calls.
Parameters
- string $method
- Method to invoke
- array $params
- Array of params for the method.
__construct() public ¶
__construct( Cake\View\View
$View , array $config [] )
Default Constructor
Parameters
-
Cake\View\View
$View - The View this helper is being attached to.
- array $config optional []
- Configuration settings for the helper.
__debugInfo() public ¶
__debugInfo( )
Returns an array that can be used to describe the internal state of this object.
Returns
__get() public ¶
__get( string $name )
Lazy loads helpers.
Parameters
- string $name
- Name of the property being accessed.
Returns
__set() public ¶
__set( string $name , mixed $value )
Magic setter for removed properties.
Parameters
- string $name
- Property name.
- mixed $value
- Value to set.
_cleanConfirmMessage() protected ¶
_cleanConfirmMessage( string $message )
Returns a string read to be used in confirm()
Parameters
- string $message
- The message to clean
Returns
_confirm() protected ¶
_confirm( string $message , string $okCode , string $cancelCode '' , array $options [] )
Returns a string to be used as onclick handler for confirm dialogs.
Parameters
- string $message
- Message to be displayed
- string $okCode
- Code to be executed after user chose 'OK'
- string $cancelCode optional ''
- Code to be executed after user chose 'Cancel'
- array $options optional []
- Array of options
Returns
onclick JS code
addClass() public ¶
addClass( array $options [] , string|null $class null , string $key 'class' )
Adds the given class to the element options
Parameters
- array $options optional []
- Array options/attributes to add a class to
- string|null $class optional null
- The class name being added.
- string $key optional 'class'
- the key to use for class.
Returns
Array of options with $key set.
initialize() public ¶
initialize( array $config )
Constructor hook method.
Implement this method to avoid having to overwrite the constructor and call parent.
Parameters
- array $config
- The configuration settings provided to this helper.
Methods used from Cake\Core\InstanceConfigTrait
_configDelete() protected ¶
_configDelete( string $key )
Deletes a single config key.
Parameters
- string $key
- Key to delete.
Throws
_configRead() protected ¶
_configRead( string|null $key )
Reads a config key.
Parameters
- string|null $key
- Key to read.
Returns
_configWrite() protected ¶
_configWrite( string|array $key , mixed $value , boolean|string $merge false )
Writes a config key.
Parameters
- string|array $key
- Key to write to.
- mixed $value
- Value to write.
- boolean|string $merge optional false
True to merge recursively, 'shallow' for simple merge, false to overwrite, defaults to false.
Throws
config() public ¶
config( string|array|null $key null , mixed|null $value null , boolean $merge true )
Gets/Sets the config.
Usage
Reading the whole config:
$this->config();
Reading a specific value:
$this->config('key');
Reading a nested value:
$this->config('some.nested.key');
Setting a specific value:
$this->config('key', $value);
Setting a nested value:
$this->config('some.nested.key', $value);
Updating multiple config settings at the same time:
$this->config(['one' => 'value', 'another' => 'value']);
Deprecated
Parameters
- string|array|null $key optional null
- The key to get/set, or a complete array of configs.
- mixed|null $value optional null
- The value to set.
- boolean $merge optional true
- Whether to recursively merge or overwrite existing config, defaults to true.
Returns
Config value being read, or the object itself on write operations.
Throws
configShallow() public ¶
configShallow( string|array $key , mixed|null $value null )
Merge provided config with existing config. Unlike config()
which does
a recursive merge for nested keys, this method does a simple merge.
Setting a specific value:
$this->configShallow('key', $value);
Setting a nested value:
$this->configShallow('some.nested.key', $value);
Updating multiple config settings at the same time:
$this->configShallow(['one' => 'value', 'another' => 'value']);
Parameters
- string|array $key
- The key to set, or a complete array of configs.
- mixed|null $value optional null
- The value to set.
Returns
$this
getConfig() public ¶
getConfig( string|null $key null , mixed $default null )
Returns the config.
Usage
Reading the whole config:
$this->getConfig();
Reading a specific value:
$this->getConfig('key');
Reading a nested value:
$this->getConfig('some.nested.key');
Reading with default value:
$this->getConfig('some-key', 'default-value');
Parameters
- string|null $key optional null
- The key to get or null for the whole config.
- mixed $default optional null
- The return value when the key does not exist.
Returns
Config value being read.
setConfig() public ¶
setConfig( string|array $key , mixed|null $value null , boolean $merge true )
Sets the config.
Usage
Setting a specific value:
$this->setConfig('key', $value);
Setting a nested value:
$this->setConfig('some.nested.key', $value);
Updating multiple config settings at the same time:
$this->setConfig(['one' => 'value', 'another' => 'value']);
Parameters
- string|array $key
- The key to set, or a complete array of configs.
- mixed|null $value optional null
- The value to set.
- boolean $merge optional true
- Whether to recursively merge or overwrite existing config, defaults to true.
Returns
$this