Exemplo n.º 1
0
 public function getSolrData($offset = 0, $where = array('city_id' => 11))
 {
     $searchClient = new Search_SearchClient('http://10.10.6.51:8983/jp-property-v4/');
     try {
         // 偏移量start=0,返回行数rows=25
         $searchClient->setLimit($offset, 5);
         // 返回的字段列表
         $searchClient->setFields(array('score', '*'));
         //筛选条件
         foreach ($where as $searchFilter => $value) {
             $searchClient->addEqualFilter($searchFilter, $value);
         }
         return $result = $searchClient->fetchResult();
     } catch (Exception $e) {
         return $e->__toString() . PHP_EOL;
     }
 }
 private function updateSolrBuildingData($id, $dataInfo)
 {
     $solrApi = APF::get_instance()->get_config('solrJpBuilding', 'service');
     $searchClient = new Search_SearchClient($solrApi);
     try {
         $doc1 = new Search_Document();
         $doc1->setUniqueKey('id', $id);
         foreach ($dataInfo as $key => $val) {
             $doc1->setField($key, $val);
         }
         $documents = array($doc1);
         $result = $searchClient->saveDocuments($documents, true);
         //            $b = $searchClient->getRequestUrl();
         //            print_r($b);
         return $result;
     } catch (Exception $e) {
         return $e->__toString() . PHP_EOL;
     }
 }