Class Helper
Abstract base class for all other Helpers in CakePHP. Provides common methods and features.
Callback methods
Helpers support a number of callback methods. These callbacks allow you to hook into the various view lifecycle events and either modify existing view content or perform other application specific logic. The events are not implemented by this base class, as implementing a callback method subscribes a helper to the related event. The callback methods are as follows:
- beforeRender(Event $event, $viewFile)- beforeRender is called before the view file is rendered.
- afterRender(Event $event, $viewFile)- afterRender is called after the view file is rendered but before the layout has been rendered.
- beforeLayout(Event $event, $layoutFile)` - beforeLayout is called before the layout is rendered.
- afterLayout(Event $event, $layoutFile)- afterLayout is called after the layout has rendered.
- beforeRenderFile(Event $event, $viewFile)- Called before any view fragment is rendered.
- afterRenderFile(Event $event, $viewFile, $content)- Called after any view fragment is rendered. If a listener returns a non-null value, the output of the rendered file will be set to that.
Property Summary
- 
        $_View protectedCake\View\ViewThe View instance this helper is attached to 
- 
        $_config protectedarrayRuntime config 
- 
        $_configInitialized protectedboolWhether the config property has already been configured with defaults 
- 
        $_defaultConfig protectedarrayDefault config for this helper. 
- 
        $_helperMap protectedarrayA helper lookup table used to lazy load helper objects. 
- 
        $fieldset publicarrayHolds the fields ['field_name' => ['type' => 'string', 'length' => 100]], primaryKey and validates ['field_name'] 
- 
        $helpers publicarrayList of helpers used by this helper 
- 
        $plugin publicstringPlugin path 
- 
        $request publicCake\Http\ServerRequestRequest object 
- 
        $tags publicarrayHolds tag templates. 
- 
        $theme publicstringThe current theme name if any. 
Method Summary
- 
          __call() publicProvide non fatal errors on missing method calls. 
- 
          __construct() publicDefault Constructor 
- 
          __debugInfo() publicReturns an array that can be used to describe the internal state of this object. 
- 
          __get() publicLazy loads helpers. 
- 
          _configDelete() protectedDeletes a single config key. 
- 
          _configRead() protectedReads a config key. 
- 
          _configWrite() protectedWrites a config key. 
- 
          _confirm() protectedReturns a string to be used as onclick handler for confirm dialogs. 
- 
          addClass() publicAdds the given class to the element options 
- 
          config() public deprecatedGets/Sets the config. 
- 
          configShallow() publicMerge provided config with existing config. Unlike config()which does a recursive merge for nested keys, this method does a simple merge.
- 
          getConfig() publicReturns the config. 
- 
          getView() publicGet the view instance this helper is bound to. 
- 
          implementedEvents() publicGet the View callbacks this helper is interested in. 
- 
          initialize() publicConstructor hook method. 
- 
          setConfig() publicSets the config. 
Method Detail
__call() ¶ public
__call(string $method, array $params): voidProvide non fatal errors on missing method calls.
Parameters
- 
                string$method
- Method to invoke 
- 
                array$params
- Array of params for the method. 
Returns
void__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(): arrayReturns an array that can be used to describe the internal state of this object.
Returns
array__get() ¶ public
__get(string $name): Cake\View\Helper|nullLazy loads helpers.
Parameters
- 
                string$name
- Name of the property being accessed. 
Returns
Cake\View\Helper|nullHelper instance if helper with provided name exists
_configDelete() ¶ protected
_configDelete(string $key): voidDeletes a single config key.
Parameters
- 
                string$key
- Key to delete. 
Returns
voidThrows
Cake\Core\Exception\Exceptionif attempting to clobber existing config
_configRead() ¶ protected
_configRead(string|null $key): mixedReads a config key.
Parameters
- 
                string|null$key
- Key to read. 
Returns
mixed_configWrite() ¶ protected
_configWrite(string|array $key, mixed $value, bool|string $merge = false): voidWrites a config key.
Parameters
- 
                string|array$key
- Key to write to. 
- 
                mixed$value
- Value to write. 
- 
                bool|string$merge optional
- True to merge recursively, 'shallow' for simple merge, false to overwrite, defaults to false. 
Returns
voidThrows
Cake\Core\Exception\Exceptionif attempting to clobber existing config
_confirm() ¶ protected
_confirm(string $message, string $okCode, string $cancelCode = '', array $options = []): stringReturns 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
stringonclick JS code
addClass() ¶ public
addClass(array $options = [], string|null $class = null, string $key = 'class'): arrayAdds the given class to the element options
Parameters
- 
                array$options optional
- Array options/attributes to add a class to 
- 
                string|null$class optional
- The class name being added. 
- 
                string$key optional
- the key to use for class. 
Returns
arrayArray of options with $key set.
config() ¶ public
config(string|array|null $key = null, mixed|null $value = null, bool $merge = true): mixedGets/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']);Parameters
- 
                string|array|null$key optional
- The key to get/set, or a complete array of configs. 
- 
                mixed|null$value optional
- The value to set. 
- 
                bool$merge optional
- Whether to recursively merge or overwrite existing config, defaults to true. 
Returns
mixedConfig value being read, or the object itself on write operations.
Throws
Cake\Core\Exception\ExceptionWhen trying to set a key that is invalid.
configShallow() ¶ public
configShallow(string|array $key, mixed|null $value = null): $thisMerge 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
- The value to set. 
Returns
$thisgetConfig() ¶ public
getConfig(string|null $key = null): mixedReturns 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');Parameters
- 
                string|null$key optional
- The key to get or null for the whole config. 
Returns
mixedConfig value being read.
getView() ¶ public
getView(): Cake\View\ViewGet the view instance this helper is bound to.
Returns
Cake\View\ViewThe bound view instance.
implementedEvents() ¶ public
implementedEvents(): arrayGet the View callbacks this helper is interested in.
By defining one of the callback methods a helper is assumed to be interested in the related event.
Override this method if you need to add non-conventional event listeners. Or if you want helpers to listen to non-standard events.
Returns
arrayinitialize() ¶ public
initialize(array $config): voidConstructor 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. 
Returns
voidsetConfig() ¶ public
setConfig(string|array $key, mixed|null $value = null, bool $merge = true): $thisSets 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
- The value to set. 
- 
                bool$merge optional
- Whether to recursively merge or overwrite existing config, defaults to true. 
Returns
$thisThrows
Cake\Core\Exception\ExceptionWhen trying to set a key that is invalid.
