MongoDB\Driver\ClientEncryption::encrypt
(mongodb >=1.7.0)
MongoDB\Driver\ClientEncryption::encrypt — Encrypt a value
说明
$value, ?array $options = null): MongoDB\BSON\BinaryEncrypts the value.
参数
value- 
     
The value to be encrypted. Any value that can be inserted into MongoDB can be encrypted using this method.
 options- 
     
Encryption options Option Type Description algorithm string The encryption algorithm to be used. This option is required. Specify one of the following ClientEncryption constants:
MongoDB\Driver\ClientEncryption::AEAD_AES_256_CBC_HMAC_SHA_512_DETERMINISTICMongoDB\Driver\ClientEncryption::AEAD_AES_256_CBC_HMAC_SHA_512_RANDOMMongoDB\Driver\ClientEncryption::ALGORITHM_INDEXEDMongoDB\Driver\ClientEncryption::ALGORITHM_UNINDEXEDMongoDB\Driver\ClientEncryption::ALGORITHM_RANGE
contentionFactor int The contention factor for evaluating queries with indexed, encrypted payloads.
This option only applies and may only be specified when
algorithmisMongoDB\Driver\ClientEncryption::ALGORITHM_INDEXEDorMongoDB\Driver\ClientEncryption::ALGORITHM_RANGE.keyAltName string Identifies a key vault collection document by
keyAltName. This option is mutually exclusive withkeyIdand exactly one is required.keyId MongoDB\BSON\Binary Identifies a data key by
_id. The value is a UUID (binary subtype 4). This option is mutually exclusive withkeyAltNameand exactly one is required.queryType string The query type for evaluating queries with indexed, encrypted payloads. Specify one of the following ClientEncryption constants:
MongoDB\Driver\ClientEncryption::QUERY_TYPE_EQUALITYMongoDB\Driver\ClientEncryption::QUERY_TYPE_RANGE
This option only applies and may only be specified when
algorithmisMongoDB\Driver\ClientEncryption::ALGORITHM_INDEXEDorMongoDB\Driver\ClientEncryption::ALGORITHM_RANGE.rangeOpts array Index options for a queryable encryption field supporting "range" queries. The options below must match the values set in the
encryptedFieldsof the target collection. For double and decimal128 BSON field types,min,max, andprecisionmust all be set, or all be unset.Range index options Option Type Description min mixed Required if precisionis set. The minimum BSON value of the range.max mixed Required if precisionis set. The maximum BSON value of the range.sparsity int Optional. Positive 64-bit integer. precision int Optional. Positive 32-bit integer specifying precision to use for explicit encryption. May only be set for double or decimal128 BSON field types. trimFactor int Optional. Positive 32-bit integer.  
返回值
Returns the encrypted value as MongoDB\BSON\Binary object with subtype 6.
错误/异常
- Throws MongoDB\Driver\Exception\InvalidArgumentException on argument parsing errors.
 - Throws MongoDB\Driver\Exception\EncryptionException if an error occurs while encrypting the value
 
更新日志
| 版本 | 说明 | 
|---|---|
| PECL mongodb 1.20.0 | 
        Added the "trimFactor" range option. The
        "sparsity" range option is now optional.
        | 
      
| PECL mongodb 1.16.0 | 
        Added the "rangeOpts" option.
        | 
      
| PECL mongodb 1.14.0 | 
        Added the "contentionFactor" and
        "queryType" options.
        | 
      
参见
- MongoDB\Driver\ClientEncryption::decrypt() - Decrypt a value
 - MongoDB\Driver\ClientEncryption::encryptExpression() - Encrypts a match or aggregate expression
 
用户贡献的备注
备份地址:http://www.lvesu.com/blog/php/mongodb-driver-clientencryption.encrypt.php