2013-02-01 48 views
1

在solr PECL php包中,對於solrQuery類,我們可以使用solrparam :: set方法將參數添加爲名稱值對。因此,爲了構建查詢,我們可以使用此SolrParams類。PECL solr包問題

我只是想弄清楚solrquery對象中所有方法的用例是什麼。 像

 ***"SolrQuery::addFacetDateField — Maps to facet.date 
     SolrQuery::addFacetDateOther — Adds another facet.date.other parameter 
     SolrQuery::addFacetField — Adds another field to the facet 
     SolrQuery::addFacetQuery — Adds a facet query 
     SolrQuery::addField — Specifies which fields to return in the result 
     SolrQuery::addFilterQuery — Specifies a filter query 
     SolrQuery::addHighlightField — Maps to hl.fl"*** 

....等。

我們可以簡單地使用solrparam爲查詢添加參數,那麼這些參數有什麼用處。

感謝

回答

1

沒有什麼特別之處這些方法。您可以通過兩種方式使用API​​,而不會受到任何處罰。使用SolrQuery方法可以讓你的代碼更加明確,所以對於我所設想的可讀性來說更好。

2

添加了這些方法以簡化Solr函數的使用。不幸的是,當前的文檔忽略了很多用例,我目前正在處理這些用例。

使用查詢功能的方法(如日期方面)更容易且更一致,無需每次進入Solr文檔以抽取參數名稱。它也不太容易出錯。

暫時,如果你想了解更多有關這些功能,您可以檢查Solr的維基http://wiki.apache.org/solr/SimpleFacetParameters#facet.date.other

的SolrParams是SolrQuery的祖先,SolrQuery具有比裸露的骨頭更多的功能(SolrParams) 。在文檔中,它作爲查詢方法接受的SolrClient :: query()接受SolrParams類型的參數(表示SolrParams的任何後代)。