本文整理汇总了PHP中Doctrine\ORM\Query::getRootEntities方法的典型用法代码示例。如果您正苦于以下问题:PHP Query::getRootEntities方法的具体用法?PHP Query::getRootEntities怎么用?PHP Query::getRootEntities使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Doctrine\ORM\Query
的用法示例。
在下文中一共展示了Query::getRootEntities方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: __construct
/**
* Constructor.
*
* @param Query|QueryBuilder $query
* A Doctrine ORM query or query builder.
* @param boolean $fetchJoinCollection
* Whether the query joins a collection (true by default).
* @param boolean $cache
* Use result cache (true by default).
* @param boolean $count
* Execute count query (true by default).
*/
public function __construct($query, $fetchJoinCollection = true, $cached = true, $count = true)
{
if ($count) {
$countQuery = clone $query;
$countQuery = $countQuery->select('count(e) as c')->setFirstResult(0)->setMaxResults(1)->getQuery();
$this->countQuery = $countQuery;
}
$q = $query;
if ($cached) {
$this->cache_prefix = '';
if ($query instanceof QueryBuilder) {
$q = $query->getQuery();
$entities = $query->getRootEntities();
if ($entities) {
$entity = $entities[0];
$this->cache_prefix = strtolower(substr(strrchr($entity, '\\'), 1) ?: $entity) . '-';
}
}
$q->useQueryCache(true)->useResultCache(true, 3600, $this->cache_prefix . md5($q->getDQL()));
}
parent::__construct($q, $fetchJoinCollection);
}