Класс MongoDB\BSON\ObjectId
(mongodb >=1.0.0)
Введение
Тип BSON для » ObjectId. Значение состоит из 12 байтов, где первые четыре байта являются меткой времени, которая отражает создание ObjectId. В частности, значение состоит из:
- 4-байтовое значение, представляющее секунды с начала эпохи Unix,
- 5-байтовое случайное число, уникальное для машины и процесса, и
- 3-байтовый счетчик, начинающийся со случайного значения.
В MongoDB каждый документ, хранящийся в коллекции, требует уникального
поля _id
, которое действует как первичный ключ. Если во вставленном
документе пропущено поле _id
, драйвер автоматически
создает ObjectId для поля _id
.
Использование ObjectIds для поля _id
обеспечивает следующие
дополнительные преимущества:
- Время создания ObjectId можно получить с помощью метода MongoDB\BSON\ObjectId::getTimestamp().
- Сортировка по полю
_id
, в котором хранятся значения ObjectId, примерно эквивалентна сортировке по времени создания.
Обзор классов
Список изменений
Версия | Описание |
---|---|
PECL mongodb 1.3.0 |
Переименован из Реализует интерфейс MongoDB\BSON\ObjectIdInterface. |
PECL mongodb 1.2.0 | Реализует интерфейсы Serializable и JsonSerializable. |
Содержание
- MongoDB\BSON\ObjectId::__construct — Создает новый ObjectId
- MongoDB\BSON\ObjectId::getTimestamp — Возвращает метку времени ObjectId
- MongoDB\BSON\ObjectId::jsonSerialize — Возвращает представление, которое можно преобразовать в JSON
- MongoDB\BSON\ObjectId::serialize — Сериализует ObjectId
- MongoDB\BSON\ObjectId::__toString — Возвращает шестнадцатеричное представление ObjectId
- MongoDB\BSON\ObjectId::unserialize — Десериализует ObjectId