ngtfkx / laradeck-collection-macros
A set of useful Laravel collection macros
Requires
- php: ~5.6|~7.0
- illuminate/support: ~5.1
Requires (Dev)
- phpunit/phpunit: >=5.4.3
- squizlabs/php_codesniffer: ^2.3
This package is not auto-updated.
Last update: 2024-12-22 05:50:11 UTC
README
Набор макросов для расширения стандартного функционала 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.