PHPackages                             dlimars/laravel-searchable - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Search &amp; Filtering](/categories/search)
4. /
5. dlimars/laravel-searchable

ActiveLibrary[Search &amp; Filtering](/categories/search)

dlimars/laravel-searchable
==========================

A Simple trait search for Laravel Models

1.3.0(7y ago)5156.0k↑84.3%PHP

Since Aug 21Pushed 7y ago1 watchersCompare

[ Source](https://github.com/dlimars/laravel-searchable)[ Packagist](https://packagist.org/packages/dlimars/laravel-searchable)[ RSS](/packages/dlimars-laravel-searchable/feed)WikiDiscussions master Synced 2d ago

READMEChangelogDependencies (1)Versions (7)Used By (0)

Laravel Searchable
==================

[](#laravel-searchable)

[![Build Status](https://camo.githubusercontent.com/2a7775e8de2ac6a1d76f4e7c863ed335b181ff2df7dad997766035577b7e6f35/68747470733a2f2f7472617669732d63692e6f72672f646c696d6172732f6c61726176656c2d73656172636861626c652e737667)](https://travis-ci.org/dlimars/laravel-searchable)[![Latest Stable Version](https://camo.githubusercontent.com/799ef283f926a3a79490f1f682117da1f53ebba5911497ca32b593fb66335d5e/68747470733a2f2f706f7365722e707567782e6f72672f646c696d6172732f6c61726176656c2d73656172636861626c652f762f737461626c65)](https://packagist.org/packages/dlimars/laravel-searchable)[![Total Downloads](https://camo.githubusercontent.com/e0e3192cedc33b7595db3a09033f62714dd91a96ea03043b1a455c3465b45d83/68747470733a2f2f706f7365722e707567782e6f72672f646c696d6172732f6c61726176656c2d73656172636861626c652f646f776e6c6f616473)](https://packagist.org/packages/dlimars/laravel-searchable)[![Latest Unstable Version](https://camo.githubusercontent.com/bee70be0dd2ce56c98d56a293354f3b013600a384bd836fa475a14bbb43edd30/68747470733a2f2f706f7365722e707567782e6f72672f646c696d6172732f6c61726176656c2d73656172636861626c652f762f756e737461626c65)](https://packagist.org/packages/dlimars/laravel-searchable)[![License](https://camo.githubusercontent.com/2c0fc44b8b7c5f2353a777f9ea208920af53b9f328069ca7360a75e8cda570d5/68747470733a2f2f706f7365722e707567782e6f72672f646c696d6172732f6c61726176656c2d73656172636861626c652f6c6963656e7365)](https://packagist.org/packages/dlimars/laravel-searchable)

a simple trait to use with your Laravel Models

Installation
------------

[](#installation)

open terminal and run: `composer require dlimars/laravel-searchable`

Configuration
-------------

[](#configuration)

just add in your models

```
    class MyModel extends Model {
        use Dlimars\LaravelSearchable\Searchable;
        private $searchable = [
            'name'          => 'LIKE',
            'id'            => 'MATCH',
            'created_at'    => 'BETWEEN'
        ];
    }
```

Usage
-----

[](#usage)

just call `search()` method in model

```
    $filters = [
        'name'          => 'foo bar',
        'id'            => '10',
        'created_at'    => ['2010-01-01 00:00:00', '2015-01-01 23:59:59']
    ];

    $users = User::search($filters)->get();
    // produces $query->where('name', 'LIKE', '%foo%')
    //                ->where('name', 'LIKE', '%bar%')
    //                ->where('id', '10')
    //                ->where('created_at', '>=', '2010-01-01 00:00:00')
    //                ->where('created_at', '=', '2010-01-01 00:00:00')

    $filters = [
        'created_at'    => [null, '2015-01-01 23:59:59']
    ];
    //  produces $query->where('created_at', '=', $value[0])
                //                ->where('field', '
