ViewBlock implements the concept of Blocks or Slots in the View layer.
Slots or blocks are combined with extending views and layouts to afford slots of content that are present in a layout or parent view, but are defined by the child view or elements used in the view.
string
'append'
string
'override'
string
'prepend'
string[]
The active blocks being captured.
string[]
Block content. An array of blocks indexed by name.
bool
Should the currently captured content be discarded on ViewBlock::end()
active()
Get the name of the currently open block.
string|null
Either null or the name of the last open block.
concat(string $name, mixed $value, mixed $mode)
Concat content to an existing or new block.
Concating to a new block will create the block.
Calling concat() without a value will create a new capturing block that needs to be finished with View::end(). The content of the new capturing context will be added to the existing block context.
string
$name Name of the block
mixed
$value optional The content for the block. Value will be type cast to string.
string
$mode optional If ViewBlock::APPEND content will be appended to existing content. If ViewBlock::PREPEND it will be prepended.
end()
End a capturing block. The compliment to ViewBlock::start()
exists(string $name)
Check if a block exists
string
$name Name of the block
bool
get(string $name, string $default)
Get the content for a block.
string
$name Name of the block
string
$default optional Default string
string
The block content or $default if the block does not exist.
keys()
Get the names of all the existing blocks.
string[]
An array containing the blocks.
set(string $name, mixed $value)
Set the content for a block. This will overwrite any existing content.
string
$name Name of the block
mixed
$value The content for the block. Value will be type cast to string.
start(string $name, string $mode)
Start capturing output for a 'block'
Blocks allow you to create slots or blocks of dynamic content in the layout. view files can implement some or all of a layout's slots.
You can end capturing blocks using View::end(). Blocks can be output using View::get();
string
$name The name of the block to capture for.
string
$mode optional If ViewBlock::OVERRIDE existing content will be overridden by new content. If ViewBlock::APPEND content will be appended to existing content. If ViewBlock::PREPEND it will be prepended.
Cake\Core\Exception\Exception
unclosed()
Get the unclosed/active blocks. Key is name, value is mode.
string[]
An array of unclosed blocks.
The active blocks being captured.
string[]
Block content. An array of blocks indexed by name.
string[]
Should the currently captured content be discarded on ViewBlock::end()
bool
© 2005–present 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/4.1/class-Cake.View.ViewBlock.html