當前位置: 首頁>>代碼示例>>PHP>>正文


PHP DocumentManager::getDocumentsByQuery方法代碼示例

本文整理匯總了PHP中Doctrine\ODM\PHPCR\DocumentManager::getDocumentsByQuery方法的典型用法代碼示例。如果您正苦於以下問題:PHP DocumentManager::getDocumentsByQuery方法的具體用法?PHP DocumentManager::getDocumentsByQuery怎麽用?PHP DocumentManager::getDocumentsByQuery使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Doctrine\ODM\PHPCR\DocumentManager的用法示例。


在下文中一共展示了DocumentManager::getDocumentsByQuery方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: getPagesByTags

 /**
  * Connect to Jackrabbit, and filter pages by tags
  *
  * @param $tags array with stanbol references
  * @param $currentUrl string current url
  * @param $lang string language
  *
  * @return array with links to pages
  */
 protected function getPagesByTags($tags, $currentUrl, $lang)
 {
     $this->basePath = $this->basePath . '/' . $lang;
     foreach ($tags as $i => $tag) {
         $tags[$i] = 'referring.tags = ' . $this->dm->quote($tag);
     }
     $sql = 'SELECT routes.* FROM [nt:unstructured] AS routes';
     $sql .= ' INNER JOIN [nt:unstructured] AS referring ON referring.[jcr:uuid] = routes.[routeContent]';
     $sql .= ' WHERE (ISDESCENDANTNODE(routes, ' . $this->dm->quote($this->basePath) . ') OR ISSAMENODE(routes, ' . $this->dm->quote($this->basePath) . '))';
     $sql .= ' AND (' . implode(' OR ', $tags) . ')';
     $query = $this->dm->createQuery($sql, QueryInterface::JCR_SQL2);
     $query->setLimit(-1);
     $pages = $this->dm->getDocumentsByQuery($query);
     $links = array();
     foreach ($pages as $page) {
         if ($page instanceof Route && $page->getRouteContent()) {
             $url = $this->router->generate('', array('_locale' => $lang, 'content' => $page->getRouteContent()), true);
             if (preg_replace('/^\\/|\\/$/', '', $url) !== preg_replace('/^\\/|\\/$/', '', $currentUrl)) {
                 $label = $page->getRouteContent()->title;
                 $links[] = array('url' => $url, 'label' => $label);
             }
         }
     }
     return $links;
 }
開發者ID:richardmiller,項目名稱:LiipVieBundle,代碼行數:34,代碼來源:AssetsController.php

示例2: getDocumentsByQuery

 /**
  * Get documents from a PHPCR query instance
  *
  * @param  \PHPCR\Query\QueryResultInterface $result
  * @return array of document instances
  */
 public function getDocumentsByQuery(\PHPCR\Query\QueryInterface $query)
 {
     return $this->dm->getDocumentsByQuery($query, $this->className);
 }
開發者ID:richardmiller,項目名稱:phpcr-odm,代碼行數:10,代碼來源:DocumentRepository.php


注:本文中的Doctrine\ODM\PHPCR\DocumentManager::getDocumentsByQuery方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。