Download the PHP package sirmathays/convenient-laravel-macros without Composer

On this page you can find all versions of the php package sirmathays/convenient-laravel-macros. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package convenient-laravel-macros

Total Downloads Latest Stable Version License

This package provides some additional, convenient macros for you to use with your Laravel project.

Installation

Install the package with Composer:

composer require sirmathays/convenient-laravel-macros

The package registers itself automatically.

Macros

Here's a brief documentation on the macros the package provides.

Illuminate\Database\Eloquent\Builder::selectKey

Select the key of the model in the query (uses Model's getKey method).

Illuminate\Database\Eloquent\Builder::whereLike & orWhereLike

Illuminate\Database\Query\Builder::selectRawArr

Add raw select statements as an array, instead of as a one ugly string (selectRaw).

Illuminate\Support\Collection::mergeMany

Merge multiple arrays/collections to the collection in one go.

Illuminate\Support\Collection::pluckMany

Pluck several keys from the collection items.

Illuminate\Support\Collection::whereExtends

Filter classes and/or objects that extend the given class.

Illuminate\Support\Collection::whereImplements

Filter classes and/or objects that implement the given interface.

Illuminate\Support\Collection::whereUses

Filter classes and/or objects that use the given trait.

Illuminate\Support\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.

Illuminate\Support\Arr::combine

Similar to array_combine, but allows to have more keys than values. Keys without value will be set as null.

Illuminate\Support\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.

Illuminate\Support\Arr::join

Collection's nice join method brought to Arr.

Illuminate\Support\Arr::zip

Zips the key and value together with the given zipper.

Illuminate\Support\Arr::unzip

Unzips keys to key and value with the given zipper.

Illuminate\Support\Str::wrap

Wraps the string with given character(s).

Illuminate\Support\Stringable::wrap

Wraps the string with given character(s).

Carbon\CarbonPeriod::collect

Extending the MacroServiceProvider

You can make your own pretty MacroServiceProviders by extending the MacroServiceProvider class provided by this package!

Here's an example:

The macro class referenced in the example above would look something like:

Commands

You can use make:macro <name> to generate a macro file to help you with the structure. The command supports --mixin option (example: --mixin=/Illuminate/Support/Collection). This will add a PHP docblock above the macro class declaration with @mixin tag.

The package also comes with macro:generate command. If you have a provider class setup that extends SirMathays\Convenience\Foundation\MacroServiceProvider class, the command will go through the macros defined in the provider and generate the ones that are missing. This way you can define multiple macros you know you will have and then generate them in bulk. It is very similar to Laravel's event:generate in its behavior.

For example:

Assuming ExampleMacro doesn't exist yet, the command would then generate the macro class, automatically also filling in the @mixin tag.

License

Convenient Laravel Commands is open-sourced software licensed under the MIT license.


All versions of convenient-laravel-macros with dependencies

PHP Build Version
Package Version
Requires php Version ^7.4|^8.0
illuminate/support Version ^8.0
illuminate/console Version ^8.0
sirmathays/convenient-laravel-helpers Version ^2.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package sirmathays/convenient-laravel-macros contains the following files

Loading the files please wait ....