/引入es搜索类
//require './vendor/autoload.php';
use Elasticsearch\ClientBuilder;
class Index
{
public function index()
{
/*$client = ClientBuilder::create()->setHosts($hosts)->build();*/
//实例化es类;在项目中引入自动加载文件,并且实例化一个客户端:
$client = ClientBuilder::create()->build();
try {
//将文档加入索引
$data = db::name('articles')->select();
//查询出多条数据添加索引
foreach ($data as $k => $v) {
$params = [
'index' => 'article_index',
'type' => 'article_type',
'id' => 'article_' . $v['id'],
'body' => [
'id' => $v['id'],
'title' => $v['title'],
'content' => $v['content'],
],
];
$response = $client->index($params);
var_dump($response);
}
//从索引中获取文档
$getparams = [
'index' => 'article_index',
'type' => 'article_type',
'id' => 'article_1'
];
$res = $client->get($getparams);
//从索引中删除文档
$delparams = [
'index' => 'article_index',
'type' => 'article_type',
'id' => 'article_1'
];
$res = $client->delete($delparams);
//删除索引
$params = [
'index' => 'articles_index'
];
$res = $client->indices()->delete($params);
print_r($res);
//搜索
$serparams = [
'index' => 'article_index',
'type' => 'article_type',
];
$serparams['body']['query']['match']['content'] = '文章内容6';
$resech = $client->search($serparams);
var_dump($resech);
// pp($data);
} catch (Exception $e) {
echo $e->getMessage();
}
}
Elasticsearch-PHP基础用法
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Elasticsearch是一个分布式,RESTful模式的高速搜索引擎,它使用标准的RESTful APIs和J...
- 1、抗拒学英文 在国内几乎所的编程语言都是外国的,所以学技术必定要学会看英文文档,如果不学英文,是绝对无法从菜鸟转...
- 1、springboot 集成elasticsearch 1.1、pom文件引入 1.2、配置文件applicat...