# phpman > man > BSON::Int64(3pm)

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

## VERSION
    version v1.12.2

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

        bson_int64( $number );

## DESCRIPTION
    This module provides a BSON type wrapper for a numeric value that would be represented in BSON
    as a 64-bit integer.

    If the value won't fit in a 64-bit integer, an error will be thrown.

    On a Perl without 64-bit integer support, the value must be a [Math::BigInt](https://www.chedong.com/phpMan.php/perldoc/Math%3A%3ABigInt/markdown) object.

## ATTRIBUTES
  value
    A numeric scalar. It will be coerced to an integer. The default is 0.

## METHODS
  TO_JSON
    On a 64-bit perl, returns the value as an integer. On a 32-bit Perl, it will be returned as a
    [Math::BigInt](https://www.chedong.com/phpMan.php/perldoc/Math%3A%3ABigInt/markdown) object, which will fail to serialize unless a "TO_JSON" method is defined for that
    or in package "universal".

    If the "BSON_EXTJSON" environment variable is true and the "BSON_EXTJSON_RELAXED" environment
    variable is false, returns a hashref 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:

        {"$numberLong" : "223372036854775807"}

## OVERLOADING
    The numification operator, "0+" is overloaded to return the "value", the full "minimal set" of
    overloaded operations is provided (per overload documentation) and 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

