php的solr的操作類別及demo
php的solr的操作類別及demo
一、solr類
'127.0.0.1','port' => '8080'); /** * 设置solr库选择 * @param $core string 库名称 */ public static function setCore($core){ if($core) self::$options['path']='solr/'.$core; } /** * 增加solr索引 * @param $fieldArr 索引字段及值 * @return bool true */ public static function addDocument($fieldArr=array()){ $client = new SolrClient(self::$options); $doc = new SolrInputDocument(); foreach($fieldArr as $k => $v){ $doc->addField($k,$v); } $client->addDocument($doc); $client->commit(); return true; } /** * 删除索引 * @param $id 主键id id可以为数组形式,应用于多选的情况 * @return bool true */ public static function delDocument($ids){ $client = new SolrClient(self::$options); if(is_array($ids)) $client->deleteByIds($ids); else $client->deleteById($ids); $client->commit(); return true; } /** * 查询数据 * @param $qwhere 关键字 * @param $fqwhere 附加条件,根据范围检索,适用于数值型 * @param $getField 查询字段 * @param $sort 排序 array('duration'=>'asc') asc:升序,desc:降序 * @param $pageindex 查询页数 * @param $pagesize 每页显示条数 */ public static function selectQuery($qwhere=array(),$fqwhere=array(),$getField=array(),$sort=array(),$pageindex=1,$pagesize=20){ $client = new SolrClient(self::$options); $query = new SolrQuery(); $sel = ''; foreach($qwhere as $k => $v){ // $sel .= ' +'.$k.':'.$v; $sel = "{$k} : \"{$v}\""; } $query->setQuery($sel); //关键字检索 //附加条件,根据范围检索,适用于数值型 if($fqwhere){ $query->setFacet(true); foreach($fqwhere as $k => $v) $query->addFacetQuery($v); //$query->addFacetQuery('price:[* TO 500]'); } //查询字段 if($getField){ foreach($getField as $key => $val) $query->addField($val); } //排序 if($sort){ foreach($sort as $k => $v){ if($v == 'asc') $query->addSortField($k,SolrQuery::ORDER_ASC); elseif($v == 'desc') $query->addSortField($k,SolrQuery::ORDER_DESC); } } //分页 $query->setStart(self::getPageIndex($pageindex,$pagesize)); $query->setRows($pagesize); $query_response = $client->query($query); $response = $query_response->getResponse(); return $response; } /** * 分页数据处理 */ private static function getPageIndex($pageindex,$pagesize){ if($pageindex<=1) $pageindex = 0; else $pageindex = ($pageindex-1)*$pagesize; return $pageindex; } }
二、操作demo rsolsol二、操作demo
內容,更多相關內容請關注PHP中文網(www.php.cn)! 相關文章:
熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

demo這個字對喜歡唱歌的朋友已經不在陌生了,但有很多沒有接觸到的使用者好奇了demo是什麼意思呢?現在就來看看小編帶來的demo的含義介紹吧。 demo是什麼意思答案:錄音樣帶。 1.demo讀音英['deməʊ]、美['demoʊ]2、demo是"demonstration"的縮寫,一般指歌曲正式錄製前試聽的初步效果;3、demo用作名詞是錄音樣帶和試樣唱片的意思,用動詞是試用(尤指軟體)、示範和示範;

Solr是一個基於Lucene的搜尋引擎,可以用來實現全文搜尋。在PHP中使用Solr進行全文搜索,可以幫助我們快速地透過關鍵字查詢到相關的數據,提高搜尋結果的準確性和可靠性。本文將為大家介紹如何在PHP中使用Solr進行全文搜尋。一、Solr的安裝與設定首先,我們需要在伺服器上安裝Solr與PHP的Solr擴充。 Solr的安裝步驟可以參考Solr的官方文檔

pythonrandom函式庫簡單使用demo當我們需要產生隨機數或從一個序列中隨機選擇元素時,可以使用Python內建的random函式庫。以下是一個有註解的例子,示範如何使用random函式庫:#導入random函式庫importrandom#產生一個0到1之間的隨機小數random_float=random.random()print(random_float)#產生一個指定範圍內的隨機整數(包括端點)random_int=random.randint(1,10)print(random_int)#

隨著互聯網的發展和資訊爆炸式增長,我們現在能夠訪問和獲取的資訊量非常大,無論是從網頁、文獻還是日常生活中獲取的信息,都需要一種高效的方式來處理和管理。全文搜尋是一種非常有效率且常用的方式,它可以透過關鍵字或短語的方式定位和提取我們需要的信息,而Solr就是一種非常適合用於全文搜尋開發的工具。本文將介紹Solr的基本概念以及在JavaAPI開發中如

最近,Realme 宣佈為其所謂的 GT7 Pro 提供 300W 快速充電功能(如先前洩漏的詳細資訊),引起了人們的注意。不過,這並不是第一個發布此類聲明的品牌——小米也已經宣傳其 300W 充電功能已經有一段時間了。

Beego是一個快速的Go語言網路框架,Solr是一個基於Lucene的搜尋和查詢伺服器。將兩者結合使用可以為Web應用程式提供高效的搜尋功能。本文將介紹在Beego中使用Solr進行搜尋和查詢的方法。第一步:安裝Solr在開始使用Solr前,先安裝Solr。 Solr可以從官方網站(https://lucene.apache.org/solr/)上下

1.在創建的springboot專案中的pom.xml中導入Lombok的依賴org.projectlomboklombok1.18.62.安裝Lombok插件3.在主啟動類的同級創建實體類的包,在包中創建實體類,並在包中創建實體類,並在實體類別上使用Lombokpackagecom.hxy.bean;importcom.fasterxml.jackson.annotation.JsonFormat;importlombok.AllArgsConstructor;importlombok.Data;importlom

0x00簡介Solr是一個獨立的企業級搜尋應用程式伺服器,它對外提供類似Web-service的API介面。使用者可以透過http請求,向搜尋引擎伺服器提交一定格式的XML文件,產生索引;也可以透過HttpGet操作提出查找請求,並取得XML格式的回傳結果。此漏洞源自於預設設定檔solr.in.sh中的ENABLE_REMOTE_JMX_OPTS設定選項存在安全風險。 ApacheSolr的8.1.1和8.2.0版本的自帶設定檔solr.in.sh中存在ENABLE_REMOTE_JMX_OPTS=
