您当前的位置:学无止境 > ElasticSearch-php安装和简单使用网站首页学无止境
ElasticSearch-php安装和简单使用
发布时间:2021-06-21 15:25:39编辑:三青查看次数:1746
ElasticSearch-php与ElasticSearch相对应的版本
三青用的ElasticSearch是7.13.1,所以php>=7.1.0,并且需要开启ext-curl,ext-json扩展。
下载地址:https://www.elastic.co/guide/en/elasticsearch/client/php-api/current/installation.html
三青用的是thinkphp6(https://www.kancloud.cn/manual/thinkphp6_0/1037481)
三青用的composer安装ElasticSearch-php(进入thinkphp6框架目录下,用阿里云的镜像)
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
composer require elasticsearch/elasticsearch="^7.0"
ElasticSearch-php文档:https://www.elastic.co/guide/en/elasticsearch/client/php-api/current/connceting.html
连接
连接ElasticSearch(访问有数据,说明链接成功,ElasticSearch要先启动)
use ElasticsearchClientBuilder; $client = ClientBuilder::create()->setHosts(['127.0.0.1:9200'])->build(); dump($client);
索引
创建索引
$index = [ "index"=>"sanqing", "body"=>[ "mappings"=>[ "properties"=>[ "name"=>[ "type"=>"keyword" ], "age"=>[ "type"=>"byte" ], "addr"=>[ "type"=>"text", "analyzer"=>"ik_max_word" ] ] ] ] ]; $response = $client->indices()->create($index);
判断索引是否存在
$client->indices()->exists(['index'=>'sanqing']);
获取mapping(结构)
$client->indices()->getMapping(['index'=>'sanqing']);
删除索引
$client->indices()->delete(['index'=>'sanqing']);
文档
插入文档
$doc = [ "index"=>'sanqing', "id"=>1, "body"=>[ "name"=>"三青", "age"=>33, "addr"=>"浙江省杭州市" ] ]; $client->index($doc);
批量插入文档
$docs['body'] = [ ['index'=>['_index'=>'sanqing','_id'=>2]], ['name'=>'liming','age'=>43,'addr'=>'浙江宁波市'], ['index'=>['_index'=>'lampol-1','_id'=>3]], ['name'=>'郭富城','age'=>53,'addr'=>'江苏省南京市'] ]; $client->bulk($docs);
数据
获取
$id = ['index'=>'sanqing','id'=>3]; $client->get($id);
$id2 = ['index'=>'sanqing','id'=>2,'_source'=>['name','age']]; $client->get($id2);
更新
$doc = [ 'index'=>'sanqing', 'id'=>2, 'body'=>[ 'doc'=>[ 'age'=>11 ] ] ]; $client->update($doc);
删除
$id = ['index'=>'sanqing','id'=>1]; $client->delete($id);
查询
$param = [ 'index'=>'sanqing', 'body'=>[ 'query'=>[ 'match'=>[ 'addr'=>'苏' ] ] ] ]; $client->search($param);
关键字词:ElasticSearch-php,安装,使用,ElasticSearch,php
评论: