ngtfkx/laradeck-collection-macros
laradeck-collection-macros
Набор макросов для расширения стандартного функционала Illuminate\Support\Collection
Install
Via Composer
$ composer require ngtfkx/laradeck-collection-macros
Documentation
forSelect(string $valueName, string $keyName = 'id'): array
Метод возвращает ассоциативный массив, где в качестве ключа используется свойство $keyName элемента коллекции,
а в качестве значения свойство $valueName.
$arr = [
['id' => '10', 'name' => 'First', ],
['id' => '20', 'name' => 'Second', ],
['id' => '30', 'name' => 'Third', ],
];
$collect = new Collection($arr);
$keyValueArray = $collect->forSelect('name')
//[
// '10' => 'First',
// '20' => 'Second',
// '30' => 'Third',
//]
forSelectWithPrepend(string $valueName, string $keyName = 'id', array $prepend = ['' => 'Выбрать']): array
Аналогично forSelect, только в начало массива добавляютсся данные из массива $prepend
randomSafe (int $number = null): mixed
Аналог стадандртного метода random, но в случае если размер коллекции меньше запрашиваемого числа элементов не выкидывается ошибка, а возвращается столько элементов сколько есть в коллекции
$collect = new Collection([1, 2, 3]);
$randoms = $collect->randomSafe(10);
echo sizeof($randoms); // 3
Change log
Please see CHANGELOG for more information on what has changed recently.
Credits
License
The MIT License (MIT). Please see License File for more information.
Related Packages
Send and view multiple messages (success, error, info, warning) for user with La...