Chr*_*sen 7 php indexing elasticsearch
如果索引存在与否,我想检查elasticsearch.如果它不存在,它应该创建索引并执行其他功能.我试图找到解决方案,但没有找到任何完美的解决方案.任何人都可以有任何解决方案来解决这个问题
我正在使用Elasticsearch库.
**$client = new Elasticsearch\Client();**
Run Code Online (Sandbox Code Playgroud)
kee*_*ety 24
$client = new Elasticsearch\Client();
$indexParams['index'] = 'my_index';
$client->indices()->exists($indexParams);
Run Code Online (Sandbox Code Playgroud)
小智 5
这将返回 true 或 false:
$params = ['index' => 'products'];
$bool=$client->indices()->exists($params);
Run Code Online (Sandbox Code Playgroud)
对于 Elasticsearch (8.x) 的最新版本,使用 php 库(对应的版本 8.x),调用$client->indices()->exists($indexParams)不再返回布尔值,而是返回Elastic\Elasticsearch\Response\Elasticsearch. 如果索引存在,则此响应实际上是 200 HTTP 响应,如果不存在,则为 HTTP 404,但它还具有asBool()您可以使用的有用功能,可以抽象出 HTTP 代码,例如
$client->indices()->exists($indexParams)->asBool();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13262 次 |
| 最近记录: |