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.
Cake\View\Helper implements Cake\Event\EventListenerInterface uses Cake\Core\InstanceConfigTrait

Direct Subclasses

Namespace: Cake\View
Location: View/Helper.php

Properties summary

  • $_View protected
    The View instance this helper is attached to
  • $_defaultConfig protected
    array
    Default config for this helper.
  • $_helperMap protected
    array
    A helper lookup table used to lazy load helper objects.
  • $fieldset public
    array

    Holds the fields ['field_name' => ['type' => 'string', 'length' => 100]], primaryKey and validates ['field_name']

  • $helpers public
    array
    List of helpers used by this helper
  • $plugin public
    string
    Plugin path
  • $request public
    Request object
  • $tags public
    array
    Holds tag templates.
  • $theme public
    string
    The current theme name if any.

Inherited Properties

Method Summary

  • __call() public
    Provide non fatal errors on missing method calls.
  • __construct() public
    Default Constructor
  • __debugInfo() public

    Returns an array that can be used to describe the internal state of this object.

  • __get() public
    Lazy loads helpers.
  • _confirm() protected
    Returns a string to be used as onclick handler for confirm dialogs.
  • addClass() public
    Adds the given class to the element options
  • Get the View callbacks this helper is interested in.
  • initialize() public
    Constructor hook method.

Method Detail

__call()source 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()source 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()source public

__debugInfo( )

Returns an array that can be used to describe the internal state of this object.

Returns

array

__get()source public

__get( string $name )

Lazy loads helpers.

Parameters

string $name
Name of the property being accessed.

Returns

Cake\View\Helper|null
Helper instance if helper with provided name exists

_confirm()source 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

string
onclick JS code

addClass()source 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
Array of options with $key set.

implementedEvents()source public

implementedEvents( )

Get 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

array

Implementation of

Cake\Event\EventListenerInterface::implementedEvents()

initialize()source 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()source protected

_configDelete( string $key )

Delete a single config key

Parameters

string $key
Key to delete.

Throws

Cake\Core\Exception\Exception
if attempting to clobber existing config

_configRead()source protected

_configRead( string|null $key )

Read a config variable

Parameters

string|null $key
Key to read.

Returns

mixed

_configWrite()source protected

_configWrite( string|array $key , mixed $value , boolean|string $merge false )

Write a config variable

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

Cake\Core\Exception\Exception
if attempting to clobber existing config

config()source public

config( string|array|null $key null , mixed|null $value null , boolean $merge true )

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 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

mixed
Config value being read, or the object itself on write operations.

Throws

Cake\Core\Exception\Exception
When trying to set a key that is invalid.

configShallow()source 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->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 $key
The key to set, or a complete array of configs.
mixed|null $value optional null
The value to set.

Returns


$this The object itself.

Properties detail

$_Viewsource

protected Cake\View\View

The View instance this helper is attached to

$_defaultConfigsource

protected array

Default config for this helper.

[]

$_helperMapsource

protected array

A helper lookup table used to lazy load helper objects.

[]

$fieldsetsource

public array

Holds the fields ['field_name' => ['type' => 'string', 'length' => 100]], primaryKey and validates ['field_name']

[]

$helperssource

public array

List of helpers used by this helper

[]

$pluginsource

public string

Plugin path

null

$requestsource

public Cake\Network\Request

Request object

null

$tagssource

public array

Holds tag templates.

[]

$themesource

public string

The current theme name if any.

null

© 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.3/class-Cake.View.Helper.html