MongoDB\BSON\ObjectId 클래스

(mongodb >=1.0.0)


소개

» ObjectId의 BSON 유형입니다. 값은 12바이트로 구성되며 처음 4바이트는 ObjectId의 생성을 반영하는 타임스탬프입니다. 특히 값은 다음으로 구성됩니다.

  • Unix epoch 이후의 초를 나타내는 4바이트 값,
  • 기계와 프로세스에 고유한 5바이트 ​​난수,
  • 임의의 값으로 시작하는 3바이트 카운터.

MongoDB에서 컬렉션에 저장된 각 문서에는 기본 키로 작동하는 고유한 _id 필드가 필요합니다. 삽입된 문서가 _id 필드를 생략하면 드라이버가 _id 필드에 대한 ObjectId를 자동으로 생성합니다.

_id 필드에 ObjectIds를 사용하면 다음과 같은 추가 이점이 있습니다.

  • ObjectId의 생성 시간은 MongoDB\BSON\ObjectId::getTimestamp() 메서드를 사용하여 액세스할 수 있습니다.
  • ObjectId 값을 저장하는 _id 필드에 대한 정렬은 생성 시간을 기준으로 정렬하는 것과 거의 같습니다.

클래스 개요

                  
final class MongoDB\BSON\ObjectId implements MongoDB\BSON\ObjectIdInterface, MongoDB\BSON\Type, Serializable, JsonSerializable, Stringable {
  /* Methods */
  final public __construct(string $id = ?)
  final public getTimestamp(): int
  final public jsonSerialize(): mixed
  final public serialize(): string
  final public __toString(): string
  final public unserialize(string $serialized): void
}
                  
                

변경 로그

버전 설명
PECL mongodb 1.12.0 PHP 8.0 이상에서 Stringable을 구현합니다.
PECL mongodb 1.3.0 MongoDB\BSON\ObjectID에서 MongoDB\BSON\ObjectId로 이름이 변경되었습니다.

MongoDB\BSON\ObjectIdInterface를 구현합니다.

PECL mongodb 1.2.0 SerializableJsonSerializable을 구현합니다.
목차