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 | 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의 16진수 표현을 반환합니다.
- MongoDB\BSON\ObjectId::unserialize — ObjectId 직렬화 해제