Class NumberHelper
Number helper library.
Methods to make numbers more readable.
See: \Cake\I18n\Number
Link: https://book.cakephp.org/4/en/views/helpers/number.html
Property Summary
-
$_View protected
Cake\View\View
The View instance this helper is attached to
-
$_config protected
array<string, mixed>
Runtime config
-
$_configInitialized protected
bool
Whether the config property has already been configured with defaults
-
$_defaultConfig protected
array<string, mixed>
Default config for this class
-
$_engine protected
Cake\I18n\Number
Cake\I18n\Number instance
-
$_helperMap protected
array<string, array>
A helper lookup table used to lazy load helper objects.
-
$helpers protected
array
List of helpers used by this helper
Method Summary
-
__call() public
Call methods from Cake\I18n\Number utility class
-
__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.
-
_configDelete() protected
Deletes a single config key.
-
_configRead() protected
Reads a config key.
-
_configWrite() protected
Writes a config key.
-
_confirm() protected
Returns a string to be used as onclick handler for confirm dialogs.
-
addClass() public
Adds the given class to the element options
-
configShallow() public
Merge provided config with existing config. Unlike
config()
which does a recursive merge for nested keys, this method does a simple merge. -
currency() public
Formats a number into a currency format.
-
defaultCurrency() public deprecated
Getter/setter for default currency
-
format() public
Formats a number into the correct locale format
-
formatDelta() public
Formats a number into the correct locale format to show deltas (signed differences in value).
-
getConfig() public
Returns the config.
-
getConfigOrFail() public
Returns the config for this specific key.
-
getView() public
Get the view instance this helper is bound to.
-
implementedEvents() public
Event listeners.
-
initialize() public
Constructor hook method.
-
ordinal() public
Formats a number into locale specific ordinal suffix.
-
precision() public
Formats a number with a level of precision.
-
setConfig() public
Sets the config.
-
toPercentage() public
Formats a number into a percentage string.
-
toReadableSize() public
Returns a formatted-for-humans file size.
Method Detail
__call() ¶ public
__call(string $method, array $params): mixed
Call methods from Cake\I18n\Number utility class
Parameters
-
string
$method Method to invoke
-
array
$params Array of params for the method.
Returns
mixed
__construct() ¶ public
__construct(Cake\View\View $view, array<string, mixed> $config = [])
Default Constructor
Settings:
engine
Class name to use to replace Cake\I18n\Number functionality The class needs to be placed in theUtility
directory.
Parameters
-
Cake\View\View
$view The View this helper is being attached to.
-
array<string, mixed>
$config optional Configuration settings for the helper
Throws
Cake\Core\Exception\CakeException
When the engine class could not be found.
__debugInfo() ¶ public
__debugInfo(): array<string, mixed>
Returns an array that can be used to describe the internal state of this object.
Returns
array<string, mixed>
__get() ¶ public
__get(string $name): Cake\View\Helper|null|void
Lazy loads helpers.
Parameters
-
string
$name Name of the property being accessed.
Returns
Cake\View\Helper|null|void
_configDelete() ¶ protected
_configDelete(string $key): void
Deletes a single config key.
Parameters
-
string
$key Key to delete.
Returns
void
Throws
Cake\Core\Exception\CakeException
if attempting to clobber existing config
_configRead() ¶ protected
_configRead(string|null $key): mixed
Reads a config key.
Parameters
-
string|null
$key Key to read.
Returns
mixed
_configWrite() ¶ protected
_configWrite(array<string, mixed>|string $key, mixed $value, string|bool $merge = false): void
Writes a config key.
Parameters
-
array<string, mixed>|string
$key Key to write to.
-
mixed
$value Value to write.
-
string|bool
$merge optional True to merge recursively, 'shallow' for simple merge, false to overwrite, defaults to false.
Returns
void
Throws
Cake\Core\Exception\CakeException
if attempting to clobber existing config
_confirm() ¶ protected
_confirm(string $okCode, string $cancelCode): string
Returns a string to be used as onclick handler for confirm dialogs.
Parameters
-
string
$okCode Code to be executed after user chose 'OK'
-
string
$cancelCode Code to be executed after user chose 'Cancel'
Returns
string
addClass() ¶ public
addClass(array<string, mixed> $options, string $class, string $key = 'class'): array<string, mixed>
Adds the given class to the element options
Parameters
-
array<string, mixed>
$options Array options/attributes to add a class to
-
string
$class The class name being added.
-
string
$key optional the key to use for class. Defaults to
'class'
.
Returns
array<string, mixed>
configShallow() ¶ public
configShallow(array<string, mixed>|string $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']);
Parameters
-
array<string, mixed>|string
$key The key to set, or a complete array of configs.
-
mixed|null
$value optional The value to set.
Returns
$this
currency() ¶ public
currency(string|float $number, string|null $currency = null, array<string, mixed> $options = []): string
Formats a number into a currency format.
Options
locale
- The locale name to use for formatting the number, e.g. fr_FRfractionSymbol
- The currency symbol to use for fractional numbers.fractionPosition
- The position the fraction symbol should be placed valid options are 'before' & 'after'.before
- Text to display before the rendered numberafter
- Text to display after the rendered numberzero
- The text to use for zero values, can be a string or a number. e.g. 0, 'Free!'places
- Number of decimal places to use. e.g. 2precision
- Maximum Number of decimal places to use, e.g. 2pattern
- An ICU number pattern to use for formatting the number. e.g #,##0.00useIntlCode
- Whether to replace the currency symbol with the international currency code.escape
- Whether to escape html in resulting string
Parameters
-
string|float
$number Value to format.
-
string|null
$currency optional International currency name such as 'USD', 'EUR', 'JPY', 'CAD'
-
array<string, mixed>
$options optional Options list.
Returns
string
defaultCurrency() ¶ public
defaultCurrency(string|false|null $currency): string|null
Getter/setter for default currency
Parameters
-
string|false|null
$currency Default currency string to be used by currency() if $currency argument is not provided. If boolean false is passed, it will clear the currently stored value. Null reads the current default.
Returns
string|null
format() ¶ public
format(string|int|float $number, array<string, mixed> $options = []): string
Formats a number into the correct locale format
Options:
places
- Minimum number or decimals to use, e.g 0precision
- Maximum Number of decimal places to use, e.g. 2locale
- The locale name to use for formatting the number, e.g. fr_FRbefore
- The string to place before whole numbers, e.g. '['after
- The string to place after decimal numbers, e.g. ']'escape
- Whether to escape html in resulting string
Parameters
-
string|int|float
$number A floating point number.
-
array<string, mixed>
$options optional An array with options.
Returns
string
Links
formatDelta() ¶ public
formatDelta(string|float $value, array<string, mixed> $options = []): string
Formats a number into the correct locale format to show deltas (signed differences in value).
Options
places
- Minimum number or decimals to use, e.g 0precision
- Maximum Number of decimal places to use, e.g. 2locale
- The locale name to use for formatting the number, e.g. fr_FRbefore
- The string to place before whole numbers, e.g. '['after
- The string to place after decimal numbers, e.g. ']'escape
- Set to false to prevent escaping
Parameters
-
string|float
$value A floating point number
-
array<string, mixed>
$options optional Options list.
Returns
string
getConfig() ¶ public
getConfig(string|null $key = null, mixed $default = null): mixed
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 The key to get or null for the whole config.
-
mixed
$default optional The return value when the key does not exist.
Returns
mixed
getConfigOrFail() ¶ public
getConfigOrFail(string $key): mixed
Returns the config for this specific key.
The config value for this key must exist, it can never be null.
Parameters
-
string
$key The key to get.
Returns
mixed
Throws
InvalidArgumentException
getView() ¶ public
getView(): Cake\View\View
Get the view instance this helper is bound to.
Returns
Cake\View\View
implementedEvents() ¶ public
implementedEvents(): array<string, mixed>
Event listeners.
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<string, mixed>
initialize() ¶ public
initialize(array<string, mixed> $config): void
Constructor hook method.
Implement this method to avoid having to overwrite the constructor and call parent.
Parameters
-
array<string, mixed>
$config The configuration settings provided to this helper.
Returns
void
ordinal() ¶ public
ordinal(float|int $value, array<string, mixed> $options = []): string
Formats a number into locale specific ordinal suffix.
Parameters
-
float|int
$value An integer
-
array<string, mixed>
$options optional An array with options.
Returns
string
precision() ¶ public
precision(string|float $number, int $precision = 3, array<string, mixed> $options = []): string
Formats a number with a level of precision.
Parameters
-
string|float
$number A floating point number.
-
int
$precision optional The precision of the returned number.
-
array<string, mixed>
$options optional Additional options.
Returns
string
See Also
Links
setConfig() ¶ public
setConfig(array<string, mixed>|string $key, mixed|null $value = null, bool $merge = true): $this
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
-
array<string, mixed>|string
$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
$this
Throws
Cake\Core\Exception\CakeException
When trying to set a key that is invalid.
toPercentage() ¶ public
toPercentage(string|float $number, int $precision = 2, array<string, mixed> $options = []): string
Formats a number into a percentage string.
Options:
multiply
: Multiply the input value by 100 for decimal percentages.
Parameters
-
string|float
$number A floating point number
-
int
$precision optional The precision of the returned number
-
array<string, mixed>
$options optional Options
Returns
string
See Also
Links
toReadableSize() ¶ public
toReadableSize(string|int $size): string
Returns a formatted-for-humans file size.
Parameters
-
string|int
$size Size in bytes
Returns
string