Completed
Push — master ( f2017e...c53584 )
by
unknown
03:31
created

FiltersPartial::escapeLike()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
eloc 2
nc 1
nop 1
1
<?php
2
3
namespace Spatie\QueryBuilder\Filters;
4
5
use Illuminate\Database\Eloquent\Builder;
6
7
class FiltersPartial implements Filter
8
{
9
    public function __invoke(Builder $query, $value, string $property) : Builder
10
    {
11
        if (is_array($value)) {
12
            return $query->where(function (Builder $query) use ($value, $property) {
13
                foreach ($value as $partialValue) {
14
                    $query->orWhere($property, 'LIKE', "%{$partialValue}%");
15
                }
16
            });
17
        }
18
19
        return $query->where($property, 'LIKE', "%{$value}%");
20
    }
21
}
22