Returns a handler for the named operation.
public getHandler ( string $operation ) : callable | ||
$operation | string | |
Результат | callable |
/** * @param ContentQueryParser $contentQuery * * @return QueryResultset */ public function __invoke(ContentQueryParser $contentQuery) { $params = $contentQuery->getEntityManager()->createQueryBuilder()->getConnection()->getParams(); if (strpos($params['driver'], 'mysql') !== false) { $contentQuery->setDirective('order', 'RAND()'); } else { $contentQuery->setDirective('order', 'RANDOM()'); } return call_user_func_array($contentQuery->getHandler('select'), [$contentQuery]); }
/** * @param ContentQueryParser $contentQuery * * @return mixed */ public function __invoke(ContentQueryParser $contentQuery) { if (is_numeric($contentQuery->getIdentifier())) { $contentQuery->setParameter('id', $contentQuery->getIdentifier()); } else { $contentQuery->setParameter('slug', $contentQuery->getIdentifier()); } if (count($contentQuery->getContentTypes()) === 1) { $contentQuery->setDirective('returnsingle', true); } return call_user_func_array($contentQuery->getHandler('select'), [$contentQuery]); }
/** * @param ContentQueryParser $contentQuery * * @return QueryResultset */ public function __invoke(ContentQueryParser $contentQuery) { $contentQuery->setDirective('order', '-id'); return call_user_func_array($contentQuery->getHandler('select'), [$contentQuery]); }