Помощни функции
Nette\Utils\Helpers е статичен клас с полезни функции.
Монтаж:
composer require nette/utils
Всички примери предполагат, че псевдонимът вече е създаден:
use Nette\Utils\Helpers;
capture (callable $cb): string
Изпълнява обратна връзка и връща уловения изход като низ.
$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', ne 'baz'