Класс MongoId
(PECL mongo >=0.8.0)
Расширение, задающее этот класс, объявлено устаревшим. Вместо него используйте расширение MongoDB. Есть такие альтернативы:
Введение
Уникальный идентификатор, созданный для объектов базы данных. При добавлении записи в базу данных без поля _id, такое поле будет автоматически добавлено и инициализировано объектом MongoId. Если хранимые записи предположительно и так будут содержать уникальные поля, (такие как имя пользователя или отметку времени), возможно использовать их вместо поля _id , и это не будет изменено MongoId.
Экземпляры класса MongoId выполняют роль автоинкремента реляционных базах данных: обеспечивает кортеж уникальным ключом в случае отсутствия такового. Однако автоинкремент не очень хорошо работает с секционированными (sharded) базами данных, так как в таком случае невозможно обеспечить быстрый поиск следующего инкремента. Данный класс удовлетворяет требованиям к быстрой генерации значения, уникального в пределах секции.
Каждый MongoId состоит из 12 байт (преобразующихся в 24 шестнадцатеричных символа). Первые 4 байта занимает отметка времени, следующие 3 хеш имени хоста клиента, следующие 2 - последние 2 значащих байта идентификатора процесса исполнения скрипта, и последние 3 байта - автоинкрементное значение.
Объекты MongoIdмогуть быть сериализованы и десериализованы. Пример сериализованного значения:
C:7:"MongoId":24:{4af9f23d8ead0e1d32000000}
Обзор классов
Поля
- id
-
Поле содержит строчное представление объекта.
Замечание: Имя свойства начинается с символа
$
. К нему можно обратиться используя сложный синтаксис разбора переменных (т.е.$mongoId->{'$id'}
).
Смотрите также
Документация MongoDB об » идентификаторах.
Содержание
- MongoId::__construct — Создает новый идентификатор
- MongoId::getHostname — Получает имя хоста, используемое для идентификаторов этой машины
- MongoId::getInc — Получает увеличенное значение для создания этого идентификатора
- MongoId::getPID — Получает идентификатор процесса
- MongoId::getTimestamp — Получает количество секунд с момента создания этого идентификатора
- MongoId::isValid — Проверяет, является ли значение корректным ObjectId
- MongoId::__set_state — Создает фиктивный MongoId
- MongoId::__toString — Возвращает шестнадцатеричное представление этого идентификатора