PHPackages                             skrip42/advanced-repository - 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. skrip42/advanced-repository

ActiveLibrary

skrip42/advanced-repository
===========================

Symfony relation find repository

v2.3.1(5y ago)1381MITPHPPHP ^7.1.3

Since Sep 11Pushed 4y ago1 watchersCompare

[ Source](https://github.com/Skrip42/AdvancedRepository)[ Packagist](https://packagist.org/packages/skrip42/advanced-repository)[ Docs](https://github.com/Skrip42/advancedRepository)[ RSS](/packages/skrip42-advanced-repository/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (6)Dependencies (2)Versions (7)Used By (1)

AdvancedRepository
==================

[](#advancedrepository)

Суть этой приблуды - предоставить возможность делать запросы с джойнами так же легко как просто запросы по параметрам

есть 2 метода:

- protected function buildQuery(array $params)
- public function advancedFindBy(array $params)

первый билдит квери из параметров вида:

```
[
    'joinedEntityName.joinedEntityFiled' => 'value',
    'joinedEntityName.joinedSubEntityName.joinedSubEntityField' => 'like:value'
]
```

второй просто оборачивает его и возвращает результат запроса (методы разделены чтобы иметь возможность использовать buildQuery в наследниках для организации своей логики (например пагинатора))

как видно из примера выше,помимо выпобки по релейшн сушностям эта штука позволяет задать более сложные условия:

```
[
  'fieldName' => 'value',                    // равенство
  'fieldName' => 'not::value',               // неравыенство
  'fieldName' => 'like::value',              // нестрогое соотвествие
  'fieldName' => 'notLike::value',           // нестрогое соотвествие с отрицанием
  'fieldName' => 'in::value1,value2,value3', // вхождение в масив
  'fieldName' => 'notIn::value4,value5',     // вхождение в масив с отрицанием
  'fieldName' => 'less::value',              // меньше значения
  'fieldName' => 'lessOrEq::value',          // меньше или равно значению
  'fieldName' => 'more::value',              // больше значения
  'fieldName' => 'moreOrEq::value',          // больше или равно значения
  'fieldName' => 'empty::',                  // не определено
  'fieldName' => 'notEmpty::'                // определено
]
```

В завершении замечу, что тут крайне сырой и некрасивый код, по суть это прототип из которого уже нужно лепить полноценный компилятор запросов, но я ленивая жопа и наврятле когданибудь это сделаю

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~21 days

Total

6

Last Release

1965d ago

Major Versions

v1.0.0 → v2.0.02020-10-16

### Community

Maintainers

![](https://www.gravatar.com/avatar/ac2ab44421653cebc795140356530287c37ba8c2011790683db6d2b316ea0e8d?d=identicon)[skrip42](/maintainers/skrip42)

---

Top Contributors

[![Skrip42](https://avatars.githubusercontent.com/u/11675343?v=4)](https://github.com/Skrip42 "Skrip42 (14 commits)")

### Embed Badge

![Health badge](/badges/skrip42-advanced-repository/health.svg)

```
[![Health](https://phpackages.com/badges/skrip42-advanced-repository/health.svg)](https://phpackages.com/packages/skrip42-advanced-repository)
```

###  Alternatives

[damienharper/auditor-bundle

Integrate auditor library in your Symfony projects.

4542.8M](/packages/damienharper-auditor-bundle)[kilik/table

Symfony Ajax Datagrid Bundle for doctrine entities

3361.4k](/packages/kilik-table)[pixelfederation/doctrine-resettable-em-bundle

Symfony bundle for decorating default entity managers using a resettable decorator.

20113.5k](/packages/pixelfederation-doctrine-resettable-em-bundle)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1022.4k](/packages/rcsofttech-audit-trail-bundle)[ahmed-bhs/doctrine-doctor

Runtime analysis tool for Doctrine ORM integrated into Symfony Web Profiler. Unlike static linters, it analyzes actual query execution at runtime to detect performance bottlenecks, security vulnerabilities, and best practice violations during development with real execution context and data.

813.1k](/packages/ahmed-bhs-doctrine-doctor)[easycorp/easyadmin-demo

EasyAdmin Demo Application

145.7k](/packages/easycorp-easyadmin-demo)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
