Skip to content

Commit 1555c5e

Browse files
authored
Merge pull request LaravelRUS#304 from demn98/patch-12
Update helpers.md
2 parents 93f2318 + 7a3b47c commit 1555c5e

File tree

1 file changed

+225
-3
lines changed

1 file changed

+225
-3
lines changed

helpers.md

Lines changed: 225 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
git 22d680c29691d3cb0ec585f43c5a0a39d404fef1
1+
git ff7f2bf9e463e6f4027d6c6218107f319effead9
22

33
---
44

@@ -136,7 +136,9 @@ Laravel содержит множество глобальных «вспомо
136136
- [Str::studly](#method-studly-case)
137137
- [Str::substr](#method-str-substr)
138138
- [Str::substrCount](#method-str-substrcount)
139+
- [Str::substrReplace](#method-str-substrreplace)
139140
- [Str::title](#method-title-case)
141+
- [Str::toHtmlString](#method-str-to-html-string)
140142
- [Str::ucfirst](#method-str-ucfirst)
141143
- [Str::upper](#method-str-upper)
142144
- [Str::uuid](#method-str-uuid)
@@ -161,6 +163,7 @@ Laravel содержит множество глобальных «вспомо
161163
- [basename](#method-fluent-str-basename)
162164
- [before](#method-fluent-str-before)
163165
- [beforeLast](#method-fluent-str-before-last)
166+
- [between](#method-fluent-str-between)
164167
- [camel](#method-fluent-str-camel)
165168
- [contains](#method-fluent-str-contains)
166169
- [containsAll](#method-fluent-str-contains-all)
@@ -196,6 +199,7 @@ Laravel содержит множество глобальных «вспомо
196199
- [replaceLast](#method-fluent-str-replace-last)
197200
- [replaceMatches](#method-fluent-str-replace-matches)
198201
- [rtrim](#method-fluent-str-rtrim)
202+
- [scan](#method-fluent-str-scan)
199203
- [singular](#method-fluent-str-singular)
200204
- [slug](#method-fluent-str-slug)
201205
- [snake](#method-fluent-str-snake)
@@ -204,14 +208,26 @@ Laravel содержит множество глобальных «вспомо
204208
- [startsWith](#method-fluent-str-starts-with)
205209
- [studly](#method-fluent-str-studly)
206210
- [substr](#method-fluent-str-substr)
211+
- [substrReplace](#method-fluent-str-substrreplace)
207212
- [tap](#method-fluent-str-tap)
208213
- [test](#method-fluent-str-test)
209214
- [title](#method-fluent-str-title)
210215
- [trim](#method-fluent-str-trim)
211216
- [ucfirst](#method-fluent-str-ucfirst)
212217
- [upper](#method-fluent-str-upper)
213218
- [when](#method-fluent-str-when)
219+
- [whenContains](#method-fluent-str-when-contains)
220+
- [whenContainsAll](#method-fluent-str-when-contains-all)
214221
- [whenEmpty](#method-fluent-str-when-empty)
222+
- [whenNotEmpty](#method-fluent-str-when-not-empty)
223+
- [whenStartsWith](#method-fluent-str-when-starts-with)
224+
- [whenEndsWith](#method-fluent-str-when-ends-with)
225+
- [whenExactly](#method-fluent-str-when-exactly)
226+
- [whenIs](#method-fluent-str-when-is)
227+
- [whenIsAscii](#method-fluent-str-when-is-ascii)
228+
- [whenIsUuid](#method-fluent-str-when-is-uuid)
229+
- [whenTest](#method-fluent-str-when-test)
230+
- [wordCount](#method-fluent-str-word-count)
215231
- [words](#method-fluent-str-words)
216232

217233
<!-- </div> -->
@@ -1696,6 +1712,19 @@ Laravel содержит множество глобальных «вспомо
16961712

16971713
// 2
16981714

1715+
<a name="method-str-substrreplace"></a>
1716+
#### `Str::substrReplace()` {.collection-method}
1717+
1718+
Метод `Str::substrReplace` заменяет текст в части строки, начиная с позиции, указанной третьим аргументом, и заменяет число символов, указанное четвертым аргументом. Передав `0` четвертым аргументом в метод, строка будет вставлена в указанную позицию без замены каких-либо существующих символов в строке:
1719+
1720+
use Illuminate\Support\Str;
1721+
1722+
$result = Str::substrReplace('1300', ':', 2);
1723+
// 13:
1724+
1725+
$result = Str::substrReplace('1300', ':', 2, 0);
1726+
// 13:00
1727+
16991728
<a name="method-title-case"></a>
17001729
#### `Str::title()`
17011730

@@ -1707,6 +1736,15 @@ Laravel содержит множество глобальных «вспомо
17071736

17081737
// A Nice Title Uses The Correct Case
17091738

1739+
<a name="method-str-to-html-string"></a>
1740+
#### `Str::toHtmlString()` {.collection-method}
1741+
1742+
Метод `Str::toHtmlString` преобразует экземпляр строки в экземпляр Illuminate\Support\HtmlString, который может отображаться в шаблонах Blade:
1743+
1744+
use Illuminate\Support\Str;
1745+
1746+
$htmlString = Str::of('Nuno Maduro')->toHtmlString();
1747+
17101748
<a name="method-str-ucfirst"></a>
17111749
#### `Str::ucfirst()`
17121750

@@ -1868,6 +1906,17 @@ Str::wordCount('Hello, world!'); // 2
18681906

18691907
// 'This '
18701908

1909+
<a name="method-fluent-str-between"></a>
1910+
#### `between` {.collection-method}
1911+
1912+
Метод `between` возвращает часть строки между двумя значениями:
1913+
1914+
use Illuminate\Support\Str;
1915+
1916+
$converted = Str::of('This is my name')->between('This', 'name');
1917+
1918+
// ' is my '
1919+
18711920
<a name="method-fluent-str-camel"></a>
18721921
#### `camel`
18731922

@@ -2312,7 +2361,7 @@ If no matches are found, an empty collection will be returned.
23122361

23132362
// Arkansas is beautiful!
23142363

2315-
Вы можете передать `false` в качестве второго аргумента для игнорирования регистра удаляемых подстрок.
2364+
Вы можете передать `false` в качестве второго аргумента для игнорирования регистра удаляемых строк.
23162365

23172366
<a name="method-fluent-str-replace"></a>
23182367
#### `replace`
@@ -2396,6 +2445,17 @@ If no matches are found, an empty collection will be returned.
23962445

23972446
// '/Laravel'
23982447

2448+
<a name="method-fluent-str-scan"></a>
2449+
#### `scan` {.collection-method}
2450+
2451+
Метод `scan` анализирует входные данные из строки в коллекцию в соответствии с форматом, поддерживаемым [`sscanf` функцией PHP](https://www.php.net/manual/ru/function.sscanf.php):
2452+
2453+
use Illuminate\Support\Str;
2454+
2455+
$collection = Str::of('filename.jpg')->scan('%[^.].%s');
2456+
2457+
// collect(['filename', 'jpg'])
2458+
23992459
<a name="method-fluent-str-singular"></a>
24002460
#### `singular`
24012461

@@ -2496,6 +2556,21 @@ If no matches are found, an empty collection will be returned.
24962556

24972557
// Frame
24982558

2559+
<a name="method-fluent-str-substrreplace"></a>
2560+
#### `substrReplace` {.collection-method}
2561+
2562+
Метод `substrReplace` заменяет текст в части строки, начиная с позиции, указанной третьим аргументом, и заменяет число символов, указанное четвертым аргументом. Передав 0 четвертым аргументом в метод, строка будет вставлена в указанную позицию без замены каких-либо существующих символов в строке:
2563+
2564+
use Illuminate\Support\Str;
2565+
2566+
$string = Str::of('1300')->substrReplace(':', 2);
2567+
2568+
// 13:
2569+
2570+
$string = Str::of('The Framework')->substrReplace(' Laravel', 3, 0);
2571+
2572+
// The Laravel Framework
2573+
24992574
<a name="method-fluent-str-tap"></a>
25002575
#### `tap`
25012576

@@ -2587,6 +2662,49 @@ If no matches are found, an empty collection will be returned.
25872662

25882663
При необходимости вы можете передать другое замыкание в качестве третьего параметра методу `when`. Это замыкание будет выполнено, если параметр условия оценивается как `false`.
25892664

2665+
<a name="method-fluent-str-when-contains"></a>
2666+
#### `whenContains` {.collection-method}
2667+
2668+
Метод `whenContains` вызывает данное замыкание, если строка содержит заданное значение. Замыкание получит экземпляр класса `Stringable` в качестве аргумента:
2669+
2670+
use Illuminate\Support\Str;
2671+
2672+
$string = Str::of('tony stark')
2673+
->whenContains('tony', function ($string) {
2674+
return $string->title();
2675+
});
2676+
2677+
// 'Tony Stark'
2678+
2679+
При необходимости вы можете передать другое замыкание в качестве третьего параметра метода `when`. Это замыкание будет выполнено, если строка не содержит заданного значения.
2680+
2681+
Вы также можете передать массив значений, чтобы определить, содержит ли данная строка какие-либо значения в массиве:
2682+
2683+
use Illuminate\Support\Str;
2684+
2685+
$string = Str::of('tony stark')
2686+
->whenContains(['tony', 'hulk'], function ($string) {
2687+
return $string->title();
2688+
});
2689+
2690+
// Tony Stark
2691+
2692+
<a name="method-fluent-str-when-contains-all"></a>
2693+
#### `whenContainsAll` {.collection-method}
2694+
2695+
Метод `whenContainsAll` вызывает данное замыкание, если строка содержит все заданные подстроки. Замыкание получит экземпляр класса `Stringable` в качестве аргумента:
2696+
2697+
use Illuminate\Support\Str;
2698+
2699+
$string = Str::of('tony stark')
2700+
->whenContainsAll(['tony', 'stark'], function ($string) {
2701+
return $string->title();
2702+
});
2703+
2704+
// 'Tony Stark'
2705+
2706+
При необходимости вы можете передать другое замыкание в качестве третьего параметра метода `when`. Это замыкание будет выполнено, если параметр условия оценивается как `false`.
2707+
25902708
<a name="method-fluent-str-when-empty"></a>
25912709
#### `whenEmpty`
25922710

@@ -2600,6 +2718,110 @@ If no matches are found, an empty collection will be returned.
26002718

26012719
// 'Laravel'
26022720

2721+
<a name="method-fluent-str-when-not-empty"></a>
2722+
#### `whenNotEmpty` {.collection-method}
2723+
2724+
Метод `whenNotEmpty` вызывает данное замыкание, если строка не пуста. Если замыкание возвращает значение, это значение также будет возвращено методом `whenNotEmpty`. Если замыкание не возвращает значение, будет возвращен экземпляр класса `Stringable`:
2725+
2726+
use Illuminate\Support\Str;
2727+
2728+
$string = Str::of('Framework')->whenNotEmpty(function ($string) {
2729+
return $string->prepend('Laravel ');
2730+
});
2731+
2732+
// 'Laravel Framework'
2733+
2734+
<a name="method-fluent-str-when-starts-with"></a>
2735+
#### `whenStartsWith` {.collection-method}
2736+
2737+
Метод `whenStartsWith` вызывает данное замыкание, если строка начинается с данной подстроки. Замыкание получит свободный экземпляр класса `Stringable` в качестве аргумента:
2738+
2739+
use Illuminate\Support\Str;
2740+
2741+
$string = Str::of('disney world')->whenStartsWith('disney', function ($string) {
2742+
return $string->title();
2743+
});
2744+
2745+
// 'Disney World'
2746+
2747+
<a name="method-fluent-str-when-ends-with"></a>
2748+
#### `whenEndsWith` {.collection-method}
2749+
2750+
Метод `whenEndsWith` вызывает данное замыкание, если строка заканчивается заданной подстрокой. Замыкание получит свободный экземпляр строки:
2751+
2752+
use Illuminate\Support\Str;
2753+
2754+
$string = Str::of('disney world')->whenEndsWith('world', function ($string) {
2755+
return $string->title();
2756+
});
2757+
2758+
// 'Disney World'
2759+
2760+
<a name="method-fluent-str-when-exactly"></a>
2761+
#### `whenExactly` {.collection-method}
2762+
2763+
Метод `whenExactly` вызывает данное замыкание, если строка точно соответствует заданной строке. Закрытие получит свободный экземпляр строки:
2764+
2765+
use Illuminate\Support\Str;
2766+
2767+
$string = Str::of('laravel')->whenExactly('laravel', function ($string) {
2768+
return $string->title();
2769+
});
2770+
2771+
// 'Laravel'
2772+
2773+
<a name="method-fluent-str-when-is"></a>
2774+
#### `whenIs` {.collection-method}
2775+
2776+
Метод `whenIs` вызывает данное замыкание, если строка соответствует заданному шаблону. Звездочки могут использоваться в качестве подстановочных знаков. Замыкание получит экземпляр класса `Stringable` в качестве аргумента:
2777+
2778+
use Illuminate\Support\Str;
2779+
2780+
$string = Str::of('foo/bar')->whenIs('foo/*', function ($string) {
2781+
return $string->append('/baz');
2782+
});
2783+
2784+
// 'foo/bar/baz'
2785+
2786+
<a name="method-fluent-str-when-is-ascii"></a>
2787+
#### `whenIsAscii` {.collection-method}
2788+
2789+
Метод `whenIsAscii` вызывает данное замыкание, если строка представляет собой 7-битный ASCII. Замыкание получит экземпляр класса `Stringable` в качестве аргумента:
2790+
2791+
use Illuminate\Support\Str;
2792+
2793+
$string = Str::of('foo/bar')->whenIsAscii('laravel', function ($string) {
2794+
return $string->title();
2795+
});
2796+
2797+
// 'Laravel'
2798+
2799+
<a name="method-fluent-str-when-is-uuid"></a>
2800+
#### `whenIsUuid` {.collection-method}
2801+
2802+
Метод `whenIsUuid` вызывает данное замыкание, если строка является допустимым UUID. Замыкание получит экземпляр класса `Stringable` в качестве аргумента:
2803+
2804+
use Illuminate\Support\Str;
2805+
2806+
$string = Str::of('foo/bar')->whenIsUuid('a0a2a2d2-0b87-4a18-83f2-2529882be2de', function ($string) {
2807+
return $string->substr(0, 8);
2808+
});
2809+
2810+
// 'a0a2a2d2'
2811+
2812+
<a name="method-fluent-str-when-test"></a>
2813+
#### `whenTest` {.collection-method}
2814+
2815+
Метод `whenTest` вызывает данное замыкание, если строка соответствует заданному регулярному выражению. Замыкание получит экземпляр класса `Stringable` в качестве аргумента:
2816+
2817+
use Illuminate\Support\Str;
2818+
2819+
$string = Str::of('laravel framework')->whenTest('/laravel/', function ($string) {
2820+
return $string->title();
2821+
});
2822+
2823+
// 'Laravel Framework'
2824+
26032825
<a name="method-fluent-str-word-count"></a>
26042826
#### `wordCount`
26052827

@@ -3229,7 +3451,7 @@ Str::of('Hello, world!')->wordCount(); // 2
32293451
Функция `with` возвращает переданное значение. Если вы передадите замыкание в функцию в качестве второго аргумента, то замыкание будет выполнено и будет возвращен результат его выполнения:
32303452

32313453
$callback = function ($value) {
3232-
return (is_numeric($value)) ? $value * 2 : 0;
3454+
return is_numeric($value) ? $value * 2 : 0;
32333455
};
32343456

32353457
$result = with(5, $callback);

0 commit comments

Comments
 (0)