MongoDB\Driver\Manager::getEncryptedFieldsMap()

返回一个映射表,该表包含加密字段的信息

首字母:M

函数名称:MongoDB\Driver\Manager::getEncryptedFieldsMap()

函数描述:返回一个映射表,该表包含加密字段的信息。

适用版本:MongoDB PHP扩展版本1.7.0及以上。

用法:

public function getEncryptedFieldsMap(): array

返回值:一个关联数组,其中键是集合名称,值是一个包含加密字段信息的关联数组。

示例:

 'users',
 'validator' => [
 '$jsonSchema' => [
 'bsonType' => 'object',
 'required' => ['name', 'email'],
 'properties' => [
 'name' => ['bsonType' => 'string'],
 'email' => ['bsonType' => 'string']
 ]
 ]
 ]
]);
$manager->executeCommand('mydb', $command);
// 向集合中插入一些文档
$bulk = new MongoDB\Driver\BulkWrite;
$bulk->insert(['name' => 'John Doe', 'email' => 'johndoe@example.com']);
$bulk->insert(['name' => 'Jane Smith', 'email' => 'janesmith@example.com']);
$manager->executeBulkWrite('mydb.users', $bulk);
// 获取加密字段的映射表
$encryptedFieldsMap = $manager->getEncryptedFieldsMap();
// 打印映射表
print_r($encryptedFieldsMap);
?>

输出示例:

Array
(
 [users] => Array
 (
 [0] => Array
 (
 [name] => encrypted
 [email] => encrypted
 )
 )
)

注意事项:

  • 该函数需要MongoDB PHP扩展版本1.7.0及以上。
  • 在使用此函数之前,需要确保已经启用了字段级加密(Field-Level Encryption)功能。
  • 返回的映射表中,每个集合对应一个关联数组,其中键是集合名称,值是一个包含加密字段信息的关联数组。
  • 加密字段信息的关联数组中,键是字段名称,值是加密状态,如果字段被加密,则值为"encrypted",否则为"not encrypted"。

同首字母函数