# phpman > perldoc > BSON::Decimal128

## NAME
    [BSON::Decimal128](https://www.chedong.com/phpMan.php/perldoc/BSON%3A%3ADecimal128/markdown) - BSON type wrapper for Decimal128

## VERSION
    version v1.12.2

## SYNOPSIS
        use [BSON::Types](https://www.chedong.com/phpMan.php/perldoc/BSON%3A%3ATypes/markdown) ':all';

        # string representation
        $decimal = bson_decimal128( "1.23456789E+1000" );

        # binary representation in BID format
        $decimal = [BSON::Decimal128](https://www.chedong.com/phpMan.php/perldoc/BSON%3A%3ADecimal128/markdown)->new( bytes => $bid )

## DESCRIPTION
    This module provides a BSON type wrapper for Decimal128 values.

    It may be initialized with either a numeric value in string form, or with a binary Decimal128
    representation (16 bytes), but not both.

    Initialization from a string will throw an error if the string cannot be parsed as a Decimal128
    or if the resulting number would not fit into 128 bits. If required, clamping or exact rounding
    will be applied to try to fit the value into 128 bits.

## ATTRIBUTES
  value
    The Decimal128 value represented as string. If not provided, it will be generated from the
    "bytes" attribute on demand.

  bytes
    The Decimal128 value represented in Binary Integer Decimal
    <<https://en.wikipedia.org/wiki/Binary_Integer_Decimal>> (BID) format. If not provided, it will be
    generated from the "value" attribute on demand.

## METHODS
  TO_JSON
    Returns the value as a string.

    If the "BSON_EXTJSON" option is true, it will instead be compatible with MongoDB's extended JSON
    <<https://github.com/mongodb/specifications/blob/master/source/extended-json.rst>> format, which
    represents it as a document as follows:

        {"$numberDecimal" : "2.23372036854775807E+57"}

## OVERLOADING
    The stringification operator ("") is overloaded to return a (normalized) string representation.
    Fallback overloading is enabled.

## AUTHORS
    *   David Golden <<david@mongodb.com>>

    *   Stefan G. <<minimalist@lavabit.com>>

## COPYRIGHT AND LICENSE
    This software is Copyright (c) 2020 by Stefan G. and MongoDB, Inc.

    This is free software, licensed under:

      The Apache License, Version 2.0, January 2004

