Pomocné funkce
Nette\Utils\Helpers je statická třída s užitečnými funkcemi.
Instalace:
composer require nette/utils
Všechny příklady předpokládají vytvořený alias:
use Nette\Utils\Helpers;
capture(callable $cb): string
Vykoná callback a vrátí zachycený výstup jako řetězec.
$res = Helpers::capture(function () use ($template) {
$template->render();
});
clamp(int|float $value, int|float $min, int|float $max): int|float
Ohraničí hodnotu do daného inkluzivního rozsahu min a max.
Helpers::clamp($level, 0, 255);
compare(mixed $left, string $operator, mixed $right): bool
Porovná dvě hodnoty stejným způsobem, jako to dělá PHP. Rozlišuje operátory >
, >=
,
<
, <=
, =
, ==
, ===
, !=
, !==
,
<>
. Funkce je užitečná v situacích, kdy operátor je proměnlivý.
Helpers::compare(10, '<', 20); // true
falseToNull(mixed $value): mixed
Převádí false
na null
, jiné hodnoty nemění.
Helpers::falseToNull(false); // null
Helpers::falseToNull(123); // 123
getLastError(): string
Vrací poslední chybu v PHP nebo prázdný řetězec, pokud k žádné chybě nedošlo. Oproti error_get_last()
nepodléhá vlivu PHP direktivy html_errors
a vrací vždy text, nikoliv HTML.
Helpers::getLastError();
getSuggestion(string[] $possibilities, string $value): ?string
Z nabízených možností $possibilities
hledá řetězec, který je nejpodobnější k $value
, ale
ne stejný. Podporuje pouze 8bitové kódování.
Hodí se v případě, že určitá volba není platná a chceme uživateli poradit podobnou (ale jinou, proto se ignoruje
stejný řetězec). Tímto způsobem Nette tvoří zprávy did you mean ...?
.
$items = ['foo', 'bar', 'baz'];
Helpers::getSuggestion($items, 'fo'); // 'foo'
Helpers::getSuggestion($items, 'barr'); // 'bar'
Helpers::getSuggestion($items, 'baz'); // 'bar', ne 'baz'