BSON::Time - BSON type wrapper for date and time
version v1.12.2
use BSON::Types ':all';
bson_time(); # now
bson_time( $secs ); # floating point seconds since epoch
This module provides a BSON type wrapper for a 64-bit date-time value in the
form of milliseconds since the Unix epoch (UTC only).
On a Perl without 64-bit integer support, the value must be a Math::BigInt
object.
A integer representing milliseconds since the Unix epoch. The default is 0.
Returns the number of seconds since the epoch (i.e. a floating-point value).
Returns the "value" as an ISO-8601 formatted string of the form
"YYYY-MM-DDThh:mm:ss.sssZ". The fractional seconds will be omitted
if they are zero.
Loads DateTime and returns the "value" as a DateTime object.
Loads DateTime::Tiny and returns the "value" as a DateTime::Tiny
object.
Loads Mango::BSON::Time and returns the "value" as a Mango::BSON::Time
object.
Loads Time::Moment and returns the "value" as a Time::Moment object.
Returns a string formatted by "as_iso8601".
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:
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:
{"$date" : { "$numberLong": "22337203685477580" } }
If the "BSON_EXTJSON" and "BSON_EXTJSON_RELAXED" environment
variables are both true, then it will return a hashref with an ISO-8601 string
for dates after the Unix epoch and before the year 10,000 and a $numberLong
style value otherwise.
{"$date" : "2012-12-24T12:15:30.500Z"}
{"$date" : { "$numberLong": "-10000000" } }
Both numification ("0+") and stringification ("") are
overloaded to return the result of "epoch". Numeric comparison and
string comparison are overloaded based on those and fallback overloading is
enabled.
- •
- David Golden <[email protected]>
- •
- Stefan G. <[email protected]>
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