elasticsearch php工具類的編寫

2021-08-07 10:42:56 字數 3021 閱讀 4068

es 5.4.0

ik 5.4.0

php 5.6

自己編寫php的elasticsearch的增刪改查的類:=》帶有ik中文分詞的功能

ik的安裝文件:

1、初始化客戶端

2、建立索引

$indexparams = [

'index' => $dbname, ## 索引:資料庫

$indexparam =[
'index' => $dbname,   ## 索引:資料庫

'type' => $tbname, ## 型別:資料表

4、新增資料

// 準備好新增的資料:

$data = [

'id'=>'1',

'title'=>'我是標題', ## 欄位title,字段值

'content'=>'我是內容'   ## 欄位content,字段值 

]

$params = [
'index' => $dbname,   ## 索引:資料庫

'type' => $tbname, ## 型別:資料表

// 準備好需要查詢的條件

$data = [

'content'=>'中國'

];$param = [

'index' => $dbname,   ## 索引:資料庫

'type' => $tbname, ## 型別:資料表

];

$query = [

'match'=>[

$field=>[

'query'=>$data[$field],

'minimum_should_match'=>'90%']]

];// 高亮

6、多個詞滿足查詢條件

'index' => $dbname,   ## 索引:資料庫

'type' => $tbname, ## 型別:資料表

];

$field = key($data);

$field_arr = explode(",", $field);

$query = [

'multi_match'=>[

'query' => $data[$field],

'type' => "best_fields", ## 我們希望完全匹配的文件佔的評分比較高,則需要使用best_fields

'fields' => $field_arr,

'tie_breaker' => 0.3      ## 意思就是完全匹配"中國"的文件評分會比較靠前,如果只匹配中國的文件評分乘以0.3的係數,這方面的詳細解答,請閱讀:

// 高亮

7、根據唯一標識id刪除資料

$params = [
'index' => $dbname,   ## 索引:資料庫

'type' => $tbname, ## 型別:資料表

es-php官網:

python類的程式設計 python中的類程式設計

1.python類中的幾個特殊函式 1 new 是建立類的物件的函式,相當於c 中建構函式。2 init 會在 new 之後被呼叫,用來初始化物件的。3 del 是物件將要被銷毀的時候被呼叫,用來將物件所占用的記憶體資源釋放給作業系統,相當於c 中的析構函式。2.python中類定義和使用 clas...

工具類 HexUtil 工具類

hexutil 源 如下 十六進製制處理工具類 public class hexutil param hex 需要轉換的16進製制字串 return 以位元組陣列返回轉換後的結果 public static byte hexstringtobyte string hex return result ...

工具類 BcdUtil 工具類

bcdutil 源 如下所示 public class bcdutil return true 功能描述 對給定的資料進行bcd轉換,如果長度為奇數,則在最前端補零 param val 待轉換資料,需滿足canbebcd return 以位元組陣列的形式返回壓縮後的內容 public static ...