Метод take() в Laravel

В Laravel есть этот метод substr() (как в Illuminate\Support\Strклассах, так и str() в global helper), который используется для формирования подстрок из заданной строки.

Вот как вы можете его использовать.

use Illuminate\Support\Str;
Str::substr('Memento Mori', 0, 7);
// Memento

str('Memento Mori')->substr(0, 7);
// Memento

Как вы можете заметить, этот метод не очень интуитивен, когда вы просто хотите сформировать подстроку из начала или конца строки. Вам необходимо передать начальный индекс as 0 и длину подстроки, 7 чтобы сформировать подстроку из начала строки.

Здесь на помощь приходит новый take() метод . Это новый метод, добавленный в класс Str и str() глобальный помощник в Laravel 8.x.

Вот как вы можете его использовать.

use Illuminate\Support\Str;

Str::take('Memento Mori', 7);
// Memento

str('Memento Mori')->take(7);
// Memento

Как вы можете заметить, take() метод гораздо более интуитивен и прост в использовании, чем substr() метод.

Вы также можете передать в метод отрицательное число take(), чтобы сформировать подстроку из конца строки.

use Illuminate\Support\Str;

Str::take('Memento Mori', -4);
// Mori

Мы думаем, что это отличное небольшое дополнение к постоянно растущему вспомогательному методу Laravel.