sideclick/data-container

This class provides a way to easily iterate through the results of a query * or query builder. Or get the total results of the query/querybuilder * or retrieve a KNP_Pagination of the query/query builder

0.1.1 2016-09-15 15:13 UTC

This package is auto-updated.

Last update: 2024-04-22 02:10:33 UTC


README

This class provides a way to easily work with the results of a Doctrine Query or QueryBuilder object as if it is an array. You may also use the class to retrive a KNP_Pagination object for the query or retrieve the query itself off the DataContainer.

Installation

Require via composer:

require sideclick/data-container

Or add the following to the "require" section of composer.json

"sideclick/data-container": "dev-master"

And then run a composer update

Usage

Step 1 Use the class:

use Sideclick\Utils\DataContainer;

Step 2 Initiate an instance

For example in a controller:

$em = $this->getDoctrine()->getManager();
$queryBuilder =
$em->getRepository('RoadToHealthBundle:User')
  ->createQueryBuilder('u');

$dataContainer = new DataContainer($queryBuilder);

Note that the DataContainer constructor can take a Doctrine QueryBuilder or Doctrine Query object as the parameter. Thereafter you may access the DataContainer object as an array. The following methods are also worth noting:

// Return the Query Builder (will return NULL if a Doctrine Query was passed in the constructor)
$dataContainer->getQueryBuilder();

// Return a KnpPaginator object for the Query
$dataContainer->getPagination($page = 1, $countPerPage = 10);

And thats it!