(PECL mongo >=0.8.0)
Esta extensión que define esta clase está obsoleta. En su lugar debe usarse la extensión MongoDB. Las alternativas a esta clase son:
Identificador único creado para objetos de bases de datos. Se se inserta un objeto sin un campo _id en una base de datos , éste se añadirá con una instancia de MongoId. Si los datos tuvieran un campo único natural (p.ej., un nombre de usuario o una marca de tiempo) no habría problema en usarlo como _id, y en este caso no se reemplazaría por un MongoId.
Las instancias de MongoId cumplen la función de los campos autoincrementales de las base de datos relacionales: ofrecen una clave única cuando los datos no tienen una clave natural. Los autoincrementales no funcionan correctamente en bases de datos compartidas, ya que es difícil determinar el siguiente número de la secuencia. Esta clase establece las limitaciones necesarias para generar rápidamente un valor único entre servidores compartidos.
Cada MongoId contiene 12 bytes (componiendo un string de 24 caracteres hexadecimales). Los cuatro primeros bytes son un timestamp, los tres siguientes son un hash del nombre de máquina del cliente, los dos siguiente son los bytes menos significativos del id del proceso en ejecución del script, y los últimos tres corresponden a un valor incremental.
MongoId es serializable y deserializable. Su forma serializada es similar a su forma en string:
C:7:"MongoId":24:{4af9f23d8ead0e1d32000000}
Nota: El nombre de la propiedad comienza con un carácter $. Se podría acceder a ella empleando la sintaxis analizada de variables complejas (p.ej., $mongoId->{'$id'}).
Documentación de MongoDB sobre » ObjectIds.