Необходимо разработать универсальный класс поиска пользователей. На входе передаются фильтры поиска в определенном вами формате. На выходе возвращается массив данных найденных пользователей с данными "users.id", "users.email", "users.role", "users.reg_date". Должна быть возможность комбинировать фильтры в логические конструкции И/ИЛИ. Для каждого фильтра необходимо добавить возможность указывать соответствие (=) или несоответствие (!=) целевому значению. Вложенность логических конструкций должна быть бесконечна. Должна быть возможность расширения списка фильтров без изменения основного алгоритма поиска.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей