PHP code example of ifedko / php-doctrine-dbal-pagination
1. Go to this page and download the library: Download ifedko/php-doctrine-dbal-pagination library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
ifedko / php-doctrine-dbal-pagination example snippets
namespace Foo\Bar;
use Ifedko\DoctrineDbalPagination\ListBuilder;
class MyListBuilder extends ListBuilder
{
protected function baseQuery()
{
$builder = $this->getQueryBuilder();
$builder
->select(['u.id, u.name, u.created_at'])
->from('users', 'u')
->where('u.is_active IS TRUE');
return $queryBuilder;
}
}
...
protected function configureFilters($parameters)
{
$mapAvailableFilterByParameter = [
'id' => new EqualFilter('id', \PDO::PARAM_INT),
'name' => new EqualFilter('name', \PDO::PARAM_STR),
'created_at_from' => new GreaterThanOrEqualFilter('user.created_at'),
'created_at_to' => new LessThanOrEqualFilter('user.created_at')
];
/* @var $filter FilterInterface */
foreach ($mapAvailableFilterByParameter as $parameterName => $filter) {
if (isset($parameters[$parameterName])) {
$filter->bindValues($parameters[$parameterName]);
$this->filters[] = $filter;
}
}
return $this;
}
...