Download the PHP package lyhty/macros without Composer
On this page you can find all versions of the php package lyhty/macros. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Package macros
Short Description Helpful macros for your Laravel project.
License MIT
Homepage https://matti.suoraniemi.com/creations/lyhty/macros
Informations about the package macros
This package provides some additional, convenient macros for you to use with your Laravel project.
Installation
Install the package with Composer:
composer require lyhty/macros
The package registers itself automatically.
Macros
Here's a brief documentation on the macros the package provides.
Illuminate\Database\Eloquent\Builder
selectKey
whereLike
&orWhereLike
Illuminate\Database\Query\Builder
selectRawArr
Illuminate\Support\Collection
mergeMany
pick
(waspluckMany
)whereExtends
whereImplements
whereUses
Illuminate\Support\Arr
associate
combine
fillKeys
implode
join
zip
unzip
Illuminate\Support\Str
explodeReverse
wrapWith
Illuminate\Support\Stringable
explodeReverse
wrapWith
Carbon\CarbonPeriod
collect
Illuminate\Database\Eloquent\Builder
Builder::selectKey
Select the key of the model in the query (uses Model's getKey
method).
Illuminate\Database\Query\Builder
Builder::whereLike
& orWhereLike
⚠️ This macro relies on
Str::explodeReverse
macro. If you want to disable the latter macro, this macro will no longer function.⚠️ The
Builder::orWhereLike
macro relies onBuilder::whereLike
macro. If you want to disable thewhereLike
macro, be sure to disable theorWhereLike
macro as well.
Builder::selectRawArr
Add raw select statements as an array, instead of as a one ugly string (selectRaw
).
Illuminate\Support\Collection
Collection::mergeMany
Merge multiple arrays/collections to the collection in one go.
Collection::pick
(was pluckMany
)
Pick several keys from the collection items. The first value should be an array of keys you want to pick up from the collection items. The second value determines whether keys will be preserved and in which format:
PICK_WITH_FULL_KEYS (>= 2)
:- Keeps even the possibly nested values in their original depths.
PICK_WITH_PARTIAL_KEYS (1)
:- Flattens the results while keeping the keys.
PICK_WITHOUT_KEYS (0)
:- No keys will be preserved
Collection::whereExtends
Filter classes and/or objects that extend the given class.
Collection::whereImplements
Filter classes and/or objects that implement the given interface.
Collection::whereUses
Filter classes and/or objects that use the given trait.
Illuminate\Support\Arr
Arr::associate
Converts an array into a fully associative array by converting any values with an integer key to the value being the key filled with the given fill value. Values that have a string key already won't be touched.
Arr::combine
Similar to array_combine
, but allows to have more keys than values. Keys without value will be set
as null.
Arr::fillKeys
Fills given keys with given value. You can also set that only keys that already exist in the array
can become filled. In other words, if the key foo
is to be filled with value bar
, but the key
foo
doesn't already exist in the array, the array will remain unchanged.
Arr::implode
Implodes given array with given separator to a \Illuminate\Support\Stringable
instance.
Arr::join
Collection's nice join method brought to Arr.
Arr::zip
Zips the key and value together with the given zipper.
Arr::unzip
Unzips keys to key and value with the given zipper.
Str::explodeReverse
Explodes the given string from the end instead of the start and returns it as
a Illuminate\Support\Collection
class instance.
Illuminate\Support\Str
Str::wrapWith
Wraps the string with given character(s).
⚠️ As Laravel 9 introduced
Str::wrap
macro, as of v4.0 this macro is now calledStr::wrapWith
to avoid conflicts. Note: the behavior between these two macros is different:
Illuminate\Support\Stringable
Stringable::explodeReverse
⚠️ This macro relies on
Str::explodeReverse
macro. If you want to disable that macro, this macro will no longer function.
See Illuminate\Support\Str::explodeReverse
Stringable::wrapWith
⚠️ As Laravel 9 introduced
Str::wrap
macro, as of v4.0 this macro is now calledStr::wrapWith
to avoid conflicts.⚠️ This macro relies on
Str::wrapWith
macro. If you want to disable that macro, this macro will no longer function.
See Illuminate\Support\Str::wrapWith
Carbon\CarbonPeriod
CarbonPeriod::collect
License
Lyhty Macros is open-sourced software licensed under the MIT license.
All versions of macros with dependencies
illuminate/support Version ^10.0 | ^11.0
illuminate/console Version ^10.0 | ^11.0
lyhty/macronite Version dev-main | ^3.1
lyhty/support Version dev-main | ^2.2