MongoDB\BSON\toPHP

(mongodb >=1.0.0)

MongoDB\BSON\toPHPВозвращает PHP представление значения BSON

Описание

MongoDB\BSON\toPHP(string $bson, array $typeMap = array()): array|object

Десериализует документ BSON (т.е. двоичную строку) в его представление PHP. Параметр typeMap может использоваться для управления типами PHP, используемыми для преобразования массивов и документов BSON (как корневых, так и встроенных).

Внимание

Документы BSON технически могут содержать повторяющиеся ключи, поскольку документы хранятся в виде списка пар ключ-значение; однако приложениям следует воздерживаться от создания документов с дубликатами ключей, поскольку поведение сервера и драйвера может быть неопределённым. Поскольку объекты и массивы PHP не могут иметь повторяющихся ключей, данные также могут быть потеряны при декодировании документа BSON с повторяющимися ключами.

Список параметров

bson (string)

Значение BSON для десериализации.

typeMap (array)

Конфигурация карты типов.

Возвращаемые значения

Десериализованное значение PHP.

Ошибки

Список изменений

Версия Описание
PECL mongodb 1.4.0

Если входные данные содержат неподдерживаемый устаревший тип BSON, драйвер больше не будет записывать предупреждение в журнал отладки, а вместо этого создаст объект, представляющий этот тип.

PECL mongodb 1.3.2

MongoDB\Driver\Exception\UnexpectedValueException больше не выдаётся, если входные данные содержат неподдерживаемый, устаревший тип BSON. Такие типы будут игнорироваться (как они были в версиях до 1.3.0), хотя драйвер теперь будет записывать предупреждение в журнал отладки (смотрите: mongodb.debug).

PECL mongodb 1.3.0

MongoDB\Driver\Exception\UnexpectedValueException выдаётся, если входные данные содержат неподдерживаемый, устаревший тип BSON. Ранее такие типы игнорировались.

Примеры

Пример #1 Пример использования MongoDB\BSON\toPHP()

<?php

$bson
= hex2bin('0e00000010666f6f000100000000');
$value = MongoDB\BSON\toPHP($bson);
var_dump($value);

?>

Результат выполнения приведённого примера:

object(stdClass)#1 (1) {
  ["foo"]=>
  int(1)
}

Смотрите также

add a note add a note

User Contributed Notes

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