$_config
$_config : array
Runtime config
Provides an interface for registering and inserting content into simple logic-less string templates.
Used by several helpers to provide simple flexible templates for generating HTML and other content.
setConfig(string|array $key, mixed|null $value = null, boolean $merge = true) : $this
Sets the config.
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']);
string|array | $key | The key to set, or a complete array of configs. |
mixed|null | $value | The value to set. |
boolean | $merge | Whether to recursively merge or overwrite existing config, defaults to true. |
When trying to set a key that is invalid.
getConfig(string|null $key = null, mixed $default = null) : mixed
Returns the config.
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');
string|null | $key | The key to get or null for the whole config. |
mixed | $default | The return value when the key does not exist. |
Config value being read.
config(string|array|null $key = null, mixed|null $value = null, boolean $merge = true) : mixed
Gets/Sets the config.
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']);
string|array|null | $key | The key to get/set, or a complete array of configs. |
mixed|null | $value | The value to set. |
boolean | $merge | Whether to recursively merge or overwrite existing config, defaults to true. |
When trying to set a key that is invalid.
Config value being read, or the object itself on write operations.
configShallow(string|array $key, mixed|null $value = null) : $this
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']);
string|array | $key | The key to set, or a complete array of configs. |
mixed|null | $value | The value to set. |
None found |
__construct(array $config = array())
Constructor.
array | $config | A set of templates to add. |
None found |
None found |
None found |
add(array $templates) : $this
Registers a list of templates by name
$templater->add([
'link' => '<a href="{{url}}">{{title}}</a>'
'button' => '<button>{{text}}</button>'
]);
array | $templates | An associative list of named templates. |
None found |
load(string $file) : void
Load a config file containing templates.
Template files should define a $config
variable containing
all the templates to load. Loaded templates will be merged with existing
templates.
string | $file | The file to load |
None found |
remove(string $name) : void
Remove the named template.
string | $name | The template to remove. |
None found |
format(string $name, array $data) : string|null
Format a template string with $data
string | $name | The template name. |
array | $data | The data to insert. |
Formatted string or null if template not found.
None found |
formatAttributes(array|null $options, array|null $exclude = null) : string
Returns a space-delimited string with items of the $options array. If a key of $options array happens to be one of those listed in `StringTemplate::$_compactAttributes` and its value is one of:
Then the value will be reset to be identical with key's name. If the value is not one of these 4, the parameter is not output.
'escape' is a special option in that it controls the conversion of attributes to their HTML-entity encoded equivalents. Set to false to disable HTML-encoding.
If value for any option key is set to null
or false
, that option will be excluded from output.
This method uses the 'attribute' and 'compactAttribute' templates. Each of
these templates uses the name
and value
variables. You can modify these
templates to change how attributes are formatted.
array|null | $options | Array of options. |
array|null | $exclude | Array of options to be excluded, the options here will not be part of the return. |
Composed attributes.
None found |
addClass(array|string $input, array|string $newClass, string $useIndex = 'class') : array|string
Adds a class and returns a unique list either in array or space separated
array|string | $input | The array or string to add the class to |
array|string | $newClass | the new class or classes to add |
string | $useIndex | if you are inputting an array with an element other than default of 'class'. |
None found |
_configRead(string|null $key) : mixed
Reads a config key.
string|null | $key | Key to read. |
None found |
_configWrite(string|array $key, mixed $value, boolean|string $merge = false) : void
Writes a config key.
string|array | $key | Key to write to. |
mixed | $value | Value to write. |
boolean|string | $merge | True to merge recursively, 'shallow' for simple merge, false to overwrite, defaults to false. |
if attempting to clobber existing config
None found |
_configDelete(string $key) : void
Deletes a single config key.
string | $key | Key to delete. |
if attempting to clobber existing config
None found |
_compileTemplates(array $templates = array()) : void
Compile templates into a more efficient printf() compatible format.
array | $templates | The template names to compile. If empty all templates will be compiled. |
None found |
_formatAttribute(string $key, string|array $value, boolean $escape = true) : string
Formats an individual attribute, and returns the string value of the composed attribute.
Works with minimized attributes that have the same value as their name such as 'disabled' and 'checked'
string | $key | The name of the attribute to create |
string|array | $value | The value of the attribute to create. |
boolean | $escape | Define if the value must be escaped |
The composed attribute.
None found |