Laravel Natural Where extends the Laravel query builder to allow expressing of where operators in natural language.
To install Laravel Natural Where, run the following command from the root of your project.
composer require divineomega/laravel-natural-whereSee the basic usage example below.
$query = \App\User::query()
->naturalWhere('created_at', 'is between the years', ['2018', '2020'])
->naturalWhere('email', 'contains the word', 'jordan')
->naturalWhere('name', 'is not', 'Jordan Smith')
->naturalWhere('id', 'is one of the following', [1, 2, 3])
->get();This example will produce the following SQL query.
select * from `users` where (`created_at` >= '2018' and `created_at` <= '2020')
and `email` LIKE '%jordan%' and `name` != 'Jordan Smith' and `id` in (1, 2, 3)