pkly / query-helper
Simple utility class for easier use of Doctrine ORM Queries in certain scenarios
Installs: 4
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/pkly/query-helper
Requires
- php: ^8.4
- doctrine/dbal: ^4
- doctrine/orm: ^3
Requires (Dev)
This package is auto-updated.
Last update: 2025-12-17 11:45:24 UTC
README
Simple utility class for easier use of Doctrine ORM Queries in certain scenarios
Installation
Simply run
composer require pkly/query-helper
Usage
In your repositories simply return an instance of QueryHelper instead of a full type.
class FooEntityRepository extends \Doctrine\ORM\EntityRepository { /** * @return QueryHelper<FooEntity, int> */ public function findByOrder( Order $order ): QueryHelper { return new QueryHelper( $this->createQueryBuilder('entity') ->where('entity.relatedOrder = :relaterOrder') ->setParameter('relaterOrder', $order) ); } }
Then use it as normal.
// inside of a service, controller, etc. $helper = $repository->findByOrder($order); $helper->ids(); // list of ids $helper->id(); // single id $helper->value(); // single object $helper->list(); // list of objects $helper->reference(); // single reference from Doctrine $helper->references(); // list of references $helper->fields(['order']); // single array of fields (one row) $helper->fieldList(['order']); // list of fields (multiple rows) $helper->count(); // simple count $helper->exists(); // boolean existence check // more advanced use // load one object with lock from query $object = $em->getRepository(FooEntity::class) ->findByOrder($order) ->lockMode(LockMode::PESSIMISTIC_WRITE) ->value(); // returns T|null
Feature requests?
Sure, hit me up with an issue if you wish.