ElasticSearch匹配查询多个术语PHP
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了ElasticSearch匹配查询多个术语PHP,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含896字,纯文字阅读大概需要2分钟。
内容图文
我试图构造必须查询多个术语,数组看起来像这样:
$params = [
'body' => [
'query' => [
"bool" => [
"must" => [
"terms" => [
"categories" => [
"Seating",
],
],
"terms" => [
"attributes.Color" => [
"Black",
],
]
],
"filter" => [
"range" => [
"price" => [
"gte" => 39,
"lte" => 2999,
],
],
],
],
],
'from' => 0,
'size' => 3,
],
];
JSON表示如下:
{
"query": {
"bool": {
"must": {
"terms": {
"attributes.Color": ["Black"]
}
},
"filter": {
"range": {
"price": {
"gte": "39",
"lte": "2999"
}
}
}
}
},
"from": 0,
"size": 3
}
问题是,JSON对象在PHP中表示为数组,因此,如果我为一个数组设置键,则将其重写.您对如何在PHP中创建多个字词查询有任何想法吗?
提前致谢.
解决方法:
您需要添加其他数组以包含所有术语查询
$params = [
'body' => [
'query' => [
"bool" => [
"must" => [
[
"terms" => [
"categories" => [
"Seating",
],
]
],
[
"terms" => [
"attributes.Color" => [
"Black",
],
]
]
],
"filter" => [
"range" => [
"price" => [
"gte" => 39,
"lte" => 2999,
],
],
],
],
],
'from' => 0,
'size' => 3,
],
];
内容总结
以上是互联网集市为您收集整理的ElasticSearch匹配查询多个术语PHP全部内容,希望文章能够帮你解决ElasticSearch匹配查询多个术语PHP所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。