Nette Documentation Preview

syntax
Функции-помощники
*****************

.[perex]
[api:Nette\Utils\Helpers] это статический класс с полезными функциями.


Установка:

```shell
composer require nette/utils
```

Во всех примерах предполагается, что псевдоним уже создан:

```php
use Nette\Utils\Helpers;
```


capture(callable $cb): string .[method]
---------------------------------------

Выполняет обратный вызов и возвращает захваченный вывод в виде строки.

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


clamp(int|float $value, int|float $min, int|float $max): int|float .[method]
----------------------------------------------------------------------------

Ограничивает значение заданным диапазоном включения min и max.

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


compare(mixed $left, string $operator, mixed $right): bool .[method]
--------------------------------------------------------------------

Сравнивает два значения так же, как это делает PHP. Различает операторы `>`, `>=`, `<`, `<=`, `=`, `==`, `===`, `!=`, `!==`, `<>`.
Эта функция полезна в ситуациях, когда оператор является изменяемым.

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


falseToNull(mixed $value): mixed .[method]
------------------------------------------

Конвертирует `false` в `null`, не изменяет другие значения.

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


getLastError(): string .[method]
--------------------------------

Возвращает последнюю ошибку в PHP или пустую строку, если ошибка не произошла. В отличие от `error_get_last()`, не зависит от директивы PHP `html_errors` и всегда возвращает текст, а не HTML.

```php
Helpers::getLastError();
```


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

Из предложенных вариантов `$possibilities` ищет строку, которая наиболее похожа на `$value`, но не совпадает с ней. Он поддерживает только 8-битное кодирование.

Это полезно, если определенная опция недействительна, и мы хотим предложить пользователю аналогичную (но другую, поэтому та же строка игнорируется). Вот как Nette создает сообщения `did you mean ...?`.

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

Функции-помощники

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'