PHP 8.4.2 Released!

MongoDB\BSON\UTCDateTime::__construct

(mongodb >=1.0.0)

MongoDB\BSON\UTCDateTime::__constructConstruit un nouveau UTCDateTime

Description

final public MongoDB\BSON\UTCDateTime::__construct(int|float|string|MongoDB\BSON\Int64|DateTimeInterface|null $milliseconds = null)

Liste de paramètres

milliseconds (int|float|string|DateTimeInterface|null)

Nombre de millisecondes depuis l'époque UNIX (1 janvier 1970). Les valeurs négatives représentent des dates avant le 1970. Cette valeur peut être fournie en tant qu'entier 64 bits. Pour la compatibilité sur les systèmes 32 bits, ce paramètre peut également être fourni comme une MongoDB\BSON\Int64.

Si l'argument est un DateTimeInterface, le nombre de millisecondes depuis l'époque UNIX sera dérivé de cette valeur.

Si cet arguement est null, la l'heure actuelle sera utilisée par défaut.

Erreurs / Exceptions

  • Lance une exception MongoDB\Driver\InvalidArgumentException lors d'une erreur survenue pendant l'analyse d'un argument.

Historique

Version Description
PECL mongodb 1.20.0

L'argument milliseconds accepte désormais un objet MongoDB\BSON\Int64 (pour compatibilité avec les plateformes 32 bits). Spécifier une string ou un float est déprécié.

PECL mongodb 1.2.0

L'argument milliseconds est facultatif et par défaut à null (c'est-à-dire l'heure actuelle). L'argument accepte également un DateTimeInterface, qui peut être utilisé pour calculer le nombre de millisecondes depuis l'époque UNIX. Auparavant, seuls les types entier, nombre décimal et chaîne de caractères étaient acceptés.

Exemples

Exemple #1 Exemple avec MongoDB\BSON\UTCDatetime::__construct()

<?php

var_dump
(new MongoDB\BSON\UTCDateTime);

var_dump(new MongoDB\BSON\UTCDateTime(new DateTime));

var_dump(new MongoDB\BSON\UTCDateTime(1416445411987));

?>

Résultat de l'exemple ci-dessus est similaire à :

object(MongoDB\BSON\UTCDateTime)#1 (1) {
  ["milliseconds"]=>
  string(13) "1484852905560"
}
object(MongoDB\BSON\UTCDateTime)#1 (1) {
  ["milliseconds"]=>
  string(13) "1484852905560"
}
object(MongoDB\BSON\UTCDateTime)#1 (1) {
  ["milliseconds"]=>
  string(13) "1416445411987"
}
add a note

User Contributed Notes 3 notes

up
2
0xff00ff at gmail dot com
8 years ago
$utcdatetime = new MongoDB\BSON\UTCDateTime($unixtimestamp * 1000);
up
1
jesperbendtsen83 at gmail dot com
8 years ago
For me to get it work with php 5.6 on an iis 7.5, it had to be a string

$utcdatetime = new MongoDB\BSON\UTCDateTime('1416445411987');
up
-2
jesperbendtsen83 at gmail dot com
8 years ago
The problem with integer => string is only on 32 bit systems
To Top