Longhorn PHP 2026 - Call For Papers

MongoDB\Driver\ClientEncryption::encryptExpression

(mongodb >=1.16.0)

MongoDB\Driver\ClientEncryption::encryptExpressionCifra una expresión de coincidencia o agregación

Descripción

final public MongoDB\Driver\ClientEncryption::encryptExpression(array|object $expr, ?array $options = null): object

Cifra una expresión de coincidencia o agregación para consultar un índice de rango.

Para consultar con una carga cifrada de rango, el MongoDB\Driver\Manager debe estar configurado con la opción del controlador "autoEncryption". La opción de auto-cifrado "bypassQueryAnalysis" puede ser true. La opción de auto-cifrado "bypassAutoEncryption" debe ser false.

Nota: La extensión aún no admite consultas de rango para tipos de campo BSON Decimal128.

Parámetros

expr
La expresión de coincidencia o agregación a cifrar. Las expresiones deben usar al menos uno de los operadores $gt, $gte, $lt o $lte. Se requiere un operador $and de nivel superior, incluso si solo se usa un único operador de comparación. A continuación se muestra un ejemplo de una expresión de coincidencia admitida (se aplica a consultas y a la etapa de agregación $match):
[
    '$and' => [
        [ '<field>' => [ '$gt'  => '<value1>' ] ],
        [ '<field>' => [ '$lte' => '<value2>' ] ],
    ],
]
A continuación se muestra un ejemplo de una expresión de agregación admitida:
[
    '$and' => [
        [ '$gte' => [ '<fieldPath>', '<value1>' ] ],
        [ '$lt'  => [ '<fieldPath>', '<value2>' ] ],
    ],
]
options

Opciones de cifrado
Opción Tipo Descripción
algorithm string El algoritmo de cifrado a utilizar. Esta opción es requerida. Especifique una de las siguientes constantes de ClientEncryption:
contentionFactor int El factor de contención para evaluar las consultas con cargas útiles cifradas indexadas. Esta opción se aplica únicamente y solo puede ser especificada cuando algorithm es MongoDB\Driver\ClientEncryption::ALGORITHM_INDEXED o MongoDB\Driver\ClientEncryption::ALGORITHM_RANGE.
keyAltName string Identifica un documento de colección de cofre de claves por keyAltName. Esta opción es mutuamente exclusiva con keyId y una de las dos es requerida.
keyId MongoDB\BSON\Binary Identifica una clave de datos por _id. El valor es un UUID (subtipo binario 4). Esta opción es mutuamente exclusiva con keyAltName y una de las dos es requerida.
queryType string El tipo de consulta para evaluar las consultas con cargas útiles cifradas indexadas. Especifique una de las siguientes constantes de ClientEncryption: Esta opción se aplica únicamente y solo puede ser especificada cuando algorithm es MongoDB\Driver\ClientEncryption::ALGORITHM_INDEXED o MongoDB\Driver\ClientEncryption::ALGORITHM_RANGE.
rangeOpts array Opciones de índice para un campo de cifrado interrogeable que soporta consultas "range". Las opciones a continuación deben coincidir con los valores definidos en encryptedFields de la colección objetivo. Para los tipos de campo BSON double y decimal128, min, max y precision deben ser todos definidos o todos no definidos.

Opciones de índice de rango
Opción Tipo Descripción
min mixed Requisito si precision está definido. El valor BSON mínimo del rango.
max mixed Requisito si precision está definido. El valor BSON máximo del rango.
sparsity int Opcional. Entero positivo de 64 bits.
precision int Opcional. Entero positivo de 32 bits que especifica la precisión a utilizar para el cifrado explícito. Solo puede ser definido para los tipos de campo BSON double o decimal128.
trimFactor int Opcional. Entero positivo de 32 bits.

Valores devueltos

Devuelve la expresión cifrada como un objeto.

Errores/Excepciones

Historial de cambios

Versión Descripción
PECL mongodb 1.20.0 Se añadió la opción de rango "trimFactor". La opción de rango "sparsity" ahora es opcional.

Ver también

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top