Stand alone port of Laravel's tap method.

v1.0.0 2017-09-24 23:36 UTC

This package is not auto-updated.

Last update: 2024-05-12 02:20:37 UTC


README

Build Status

A stand alone port of Laravel's tap method (inspired by Ruby). This package will add a tap method to the global namespace. For more information see Taylor Otwell's explanation of tap.

Installation

composer require josephlavin/tap

Example

You need to create a model and commit it to the database using save:

function createAndSaveModel($attributes)
{
    $model = new Model($attributes);
    
    $model->save();
    
    return $model;
}

The same code can be simplified utilizing tap:

function createAndSaveModel($attributes)
{
    return tap(new Model($attributes), function (Model $model) {
        $model->save();
    });
}

Utilizing the proxy feature it can be further simplified:

function createAndSaveModel($attributes)
{
    return tap(new Model($attributes))->save();
}