大神请看
本文不一定写的全部都对,如果有哪里写得不好或者不对,可以提但请不要喷,不喜勿看绕道走就是了,虽然有可能在一些小知识点上会误导小白,但是还是可以看看基础的ES操作,对于使用还是一点帮助的
ES数据的简单增删改
这一节主要讲ES的增删改查,主要从代码实践入手
ES操作数据的文档
https://www.elastic.co/guide/cn/elasticsearch/php/current/_indexing_documents.html
https://www.elastic.co/guide/cn/elasticsearch/php/current/_updating_documents.html
https://www.elastic.co/guide/cn/elasticsearch/php/current/_deleting_documents.html
https://www.elastic.co/guide/en/elasticsearch/reference/current/docs.html
增删改数据
插入数据的时候,需要给每条数据都设置一个ID,当插入的ID已经有数据存在时,则会替换更新。
插入单个数据(文档)
// 创建ES客户端
$config = [
'host' => '127.0.0.1',
'port' => 9200,
];
$client = new Client($config);
// 创建Index
$indexName = 'test';
$index = $client->getIndex($indexName);
// 插入数据时,如果Index不存在则会自动创建
$document = new Document(10000, [
'id' => 10000,
'name' => '白鹭',
'en_name' => 'bai lu',
]);
$index->addDocument($document);
插入多个数据(文档)
for ($i = 10000; $i <= 10010; $i++) {
$documents[] = new Document($i, [
'id' => $i,
'name' => '白鹭',
'en_name' => 'bai lu',
]);
}
$index->addDocuments($documents);
更新数据
更新数据只要ID相关即可更新
$document = new Document(10000, [
'id' => 10000,
'name' => '白鹤',
'en_name' => 'bai he',
]);
$index->addDocument($document);
删除数据
删除数据常用的,会根据ID去删除,或者根据一定的查询规则去删除,查询数据这个暂时不讲,先讲简单根据ID删除。
$index->deleteById(10000);