Помощни функции
Nette\Utils\Helpers е статичен клас с полезни функции.
Инсталация:
composer require nette/utils
Всички примери предполагат създаден псевдоним:
use Nette\Utils\Helpers;
capture (callable $cb): string
Изпълнява callback и връща уловения изход като низ.
$res = Helpers::capture(function () use ($template) {
$template->render();
});
clamp (int|float $value, int|float $min, int|float $max): int|float
Ограничава стойността в дадения включителен диапазон min и max.
Helpers::clamp($level, 0, 255);
compare (mixed $left, string $operator, mixed $right): bool
Сравнява две стойности по същия начин, както го прави PHP. Разграничава
операторите >
, >=
, <
, <=
, =
,
==
, ===
, !=
, !==
, <>
. Функцията е полезна
в ситуации, когато операторът е променлива.
Helpers::compare(10, '<', 20); // true
falseToNull (mixed $value): mixed
Преобразува false
в null
, другите стойности не се
променят.
Helpers::falseToNull(false); // null
Helpers::falseToNull(123); // 123
getLastError(): string
Връща последната грешка в PHP или празен низ, ако не е възникнала
грешка. За разлика от error_get_last(), не се влияе от
PHP директивата html_errors
и винаги връща текст, а не HTML.
Helpers::getLastError();
getSuggestion (string[] $possibilities, string $value): ?string
От предложените възможности $possibilities
търси низ, който е
най-подобен на $value
, но не е същият. Поддържа само 8-битово
кодиране.
Подходящо е в случай, че определена опция не е валидна и искаме да
посъветваме потребителя за подобна (но различна, затова се игнорира
същият низ). По този начин Nette създава съобщенията did you mean ...?
.
$items = ['foo', 'bar', 'baz'];
Helpers::getSuggestion($items, 'fo'); // 'foo'
Helpers::getSuggestion($items, 'barr'); // 'bar'
Helpers::getSuggestion($items, 'baz'); // 'bar', не 'baz'