(mongodb >=1.16.0)
MongoDB\Driver\ClientEncryption::encryptExpression — 加密匹配或聚合表达式
$expr, ?数组 $options = null): 对象加密匹配或聚合表达式以查询范围索引。
要使用范围加密有效负载查询,必须使用 "autoEncryption" 驱动程序选项配置 MongoDB\Driver\Manager。 "bypassQueryAnalysis" 自动加密选项可以为 true。 "bypassAutoEncryption" 自动加密选项必须为 false。
注意:
扩展尚不支持 Decimal128 BSON 字段类型的范围查询。
expr要加密的匹配或聚合表达式。表达式必须使用至少一个 $gt、$gte、$lt 或 $lte 运算符。即使仅使用单个比较运算符,也需要顶级 $and 运算符。
支持的匹配表达式的示例(适用于查询和 $match 聚合阶段)如下所示
[
'$and' => [
[ '<field>' => [ '$gt' => '<value1>' ] ],
[ '<field>' => [ '$lte' => '<value2>' ] ],
],
]
支持的聚合表达式的示例如下所示
[
'$and' => [
[ '$gte' => [ '<fieldPath>', '<value1>' ] ],
[ '$lt' => [ '<fieldPath>', '<value2>' ] ],
],
]
options
| 选项 | 类型 | 描述 | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| algorithm | 字符串 |
要使用的加密算法。此选项是必需的。指定以下 ClientEncryption 常量 之一
|
||||||||||||||||||
| contentionFactor | 整数 |
用于评估具有索引加密有效负载的查询的争用因子。 此选项仅适用于 |
||||||||||||||||||
| keyAltName | 字符串 |
通过 |
||||||||||||||||||
| keyId | MongoDB\BSON\Binary |
通过 |
||||||||||||||||||
| queryType | 字符串 |
用于评估具有索引加密有效负载的查询的查询类型。指定以下 ClientEncryption 常量 之一
此选项仅适用于 |
||||||||||||||||||
| rangeOpts | 数组 |
支持“范围”查询的可查询加密字段的索引选项。以下选项必须与目标集合的
|
将加密的表达式作为对象返回。
| 版本 | 描述 |
|---|---|
| PECL mongodb 1.20.0 | 添加了 "trimFactor" 范围选项。"sparsity" 范围选项现在是可选的。 |