/
devron
/
ecomm-app
Обзор
Документация
Войти
/
devron
/
ecomm-app
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
app/Traits/Filterable.php
30 строк
631 B
Romulus
first init
17 апр 2024, 15:18
17 апр 2024, 15:18
6886bc2
Код
Авторство
О чём код?
<?php namespace App\Traits; use App\Filters\FilterBuilder; use Illuminate\Support\Str; use ReflectionClass; trait Filterable { /** * @param $query * @param $filters * @return mixed */ public function scopeFilterBy($query, $filters): mixed { $namespace = $this->getNamespace(); return (new FilterBuilder($query, $filters, $namespace))->apply(); } /** * @return string */ private function getNamespace(): string { $reflection = new ReflectionClass(self::class); return Str::replace('\Models', '', $reflection->getNamespaceName()); } }