Hilfsfunktionen

Nette\Utils\Helpers ist eine statische Klasse mit nützlichen Funktionen.

Installation:

composer require nette/utils

Alle Beispiele gehen davon aus, dass der folgende Klassenalias definiert ist:

use Nette\Utils\Helpers;

capture (callable $cb): string

Führt einen Callback aus und gibt die erfasste Ausgabe als String zurück.

$res = Helpers::capture(function () use ($template) {
	$template->render();
});

clamp (int|float $value, int|float $min, int|float $max): int|float

Gibt einen Wert zurück, der auf den einschließenden Bereich von min und max geklemmt ist.

Helpers::clamp($level, 0, 255);

compare (mixed $left, string $operator, mixed $right)bool

Vergleicht zwei Werte auf die gleiche Weise wie PHP. Es wird zwischen den Operatoren >, >=, <, <=, =, ==, ===, !=, !==, <> unterschieden. Die Funktion ist nützlich in Situationen, in denen der Operator variabel ist.

Helpers::compare(10, '<', 20); // true

falseToNull (mixed $value)mixed

Wandelt false in null um, ändert aber keine anderen Werte.

Helpers::falseToNull(false); // null
Helpers::falseToNull(123);   // 123

getLastError(): string

Gibt den letzten aufgetretenen PHP-Fehler zurück oder einen leeren String, wenn kein Fehler aufgetreten ist. Im Gegensatz zu error_get_last() wird sie nicht von der PHP-Direktive html_errors beeinflusst und gibt immer Text, nicht HTML, zurück.

Helpers::getLastError();

getSuggestion (string[] $possibilities, string $value): ?string

Sucht nach einer Zeichenkette von $possibilities, die $value am ähnlichsten ist, aber nicht dieselbe. Unterstützt nur 8-Bit-Kodierungen.

Sie ist nützlich, wenn eine bestimmte Option nicht gültig ist und wir dem Benutzer eine ähnliche Option vorschlagen wollen (die sich aber unterscheidet, so dass die gleiche Zeichenkette ignoriert wird). Auf diese Weise erstellt Nette die Nachrichten did you mean ...?.

$items = ['foo', 'bar', 'baz'];
Helpers::getSuggestion($items, 'fo');   // 'foo'
Helpers::getSuggestion($items, 'barr'); // 'bar'
Helpers::getSuggestion($items, 'baz');  // 'bar', ne 'baz'
Version: 4.0