개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.08.06 20:23

MongoDBBSONDocument::toCanonicalExtendedJSON 관련 질문

목록
  • JetpackCompose마… 17시간 전 2025.08.06 20:23 새글
  • 2
    1
제가 MongoDBBSONDocument::toCanonicalExtendedJSON 함수를 사용하여 JSON 문서를 생성하려고 하는데, 이 함수의 반환 값이 Extended JSON 형식으로 반환되는데 이 Extended JSON 형식은 어떤 의미를 가지고 있는 것일까요?

또한 이 Extended JSON 형식으로 반환된 문자열을 다시 MongoDBBSONDocument로 변환할 수 있는 방법을 알고 싶습니다.

그리고 MongoDBBSONDocument::toCanonicalExtendedJSON 함수의 옵션을 설정하여 반환되는 Extended JSON 형식의 구조를 변경할 수 있는 방법을 알고 싶습니다.

아래의 예를 들어 설명해주시면 감사하겠습니다.

php

use MongoDBBSONUTCDateTime;



$document = new MongoDBBSONDocument([

    '_id' => new MongoDBBSONObjectId(),

    'created_at' => new UTCDateTime(),

    'updated_at' => new UTCDateTime()

]);



$extendedJSON = $document->toCanonicalExtendedJSON();



위의 코드를 실행하여 반환되는 Extended JSON 형식의 구조를 어떻게 변경할 수 있는지 알려주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  17시간 전



    Extended JSON 형식은 MongoDB의 BSON 문서를 JSON 형식으로 변환할 때 사용하는 형식입니다. 이 형식은 MongoDB의 내부 표현 방식인 BSON을 JSON으로 변환한 것입니다. Extended JSON 형식은 일반적인 JSON 형식과는 다르게 MongoDB의 특수한 기능을 지원하기 위해 설계된 형식입니다.

    Extended JSON 형식으로 반환된 문자열을 다시 MongoDBBSONDocument로 변환할 수 있는 방법은 다음과 같습니다.

    #hostingforum.kr
    php
    
    use MongoDBBSONUTCDateTime;
    
    
    
    $document = new MongoDBBSONDocument([
    
        '_id' => new MongoDBBSONObjectId(),
    
        'created_at' => new UTCDateTime(),
    
        'updated_at' => new UTCDateTime()
    
    ]);
    
    
    
    $extendedJSON = $document->toCanonicalExtendedJSON();
    
    
    
    $document2 = MongoDBBSONfromJSON($extendedJSON);
    
    


    MongoDBBSONDocument::toCanonicalExtendedJSON 함수의 옵션을 설정하여 반환되는 Extended JSON 형식의 구조를 변경할 수 있는 방법은 다음과 같습니다.

    #hostingforum.kr
    php
    
    use MongoDBBSONUTCDateTime;
    
    
    
    $document = new MongoDBBSONDocument([
    
        '_id' => new MongoDBBSONObjectId(),
    
        'created_at' => new UTCDateTime(),
    
        'updated_at' => new UTCDateTime()
    
    ]);
    
    
    
    $options = [
    
        'format' => MongoDBBSONtoJSONOptions::FORMAT_DEFAULT,
    
        'sort' => MongoDBBSONtoJSONOptions::SORT_ASCENDING,
    
        'canonical' => true,
    
        'extended' => true,
    
        'pretty' => false,
    
        'indent' => 0,
    
        'escapeString' => false,
    
        'maxDepth' => 0,
    
        'maxArrayElements' => 0,
    
        'maxKeyLength' => 1024,
    
    ];
    
    
    
    $extendedJSON = $document->toCanonicalExtendedJSON($options);
    
    


    위의 코드에서 `$options` 배열을 사용하여 Extended JSON 형식의 구조를 변경할 수 있습니다. 예를 들어, `format` 옵션을 사용하여 JSON 형식의 구조를 변경할 수 있습니다. `sort` 옵션을 사용하여 JSON 형식의 정렬 순서를 변경할 수 있습니다. `canonical` 옵션을 사용하여 Extended JSON 형식의 구조를 변경할 수 있습니다. `extended` 옵션을 사용하여 Extended JSON 형식의 구조를 변경할 수 있습니다. `pretty` 옵션을 사용하여 JSON 형식의 들여쓰기를 변경할 수 있습니다. `indent` 옵션을 사용하여 JSON 형식의 들여쓰기 수를 변경할 수 있습니다. `escapeString` 옵션을 사용하여 JSON 형식의 문자열을 변경할 수 있습니다. `maxDepth` 옵션을 사용하여 JSON 형식의 최대 깊이를 변경할 수 있습니다. `maxArrayElements` 옵션을 사용하여 JSON 형식의 최대 배열 요소를 변경할 수 있습니다. `maxKeyLength` 옵션을 사용하여 JSON 형식의 최대 키 길이를 변경할 수 있습니다.

    2025-08-06 20:24

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 42,158건 / 9 페이지

검색

게시물 검색