forked from nette/docs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhelpers.texy
87 lines (56 loc) · 3.01 KB
/
helpers.texy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
Помощни функции
***************
.[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'
```