Mettre à jour une valeur d'une commande à une date précise?

Bonjour à tous,

J’aimerai spécifier une date de collecte des données remontés par un flux externe. A ce jour, la date et heure sont celles au moment de l’exécution du script : cron ou refresh manuel, via cette méthode :

this->checkAndUpdateCmd('temperature', 32);

mais le flux externe fourni une date de relevé précise en timestamp, ainsi j’aimerai qu’elle remplace la valeur par défaut. J’ai tenté le 3ème argument en vain :

this->checkAndUpdateCmd('temperature', 32, 1590387798);

Est la ‹ bonne › méthode pour ce genre d’action ?

En creusant le souci, j’arrive sur la condition ci-dessous qui convertie les 2 dates en timestamp (hors la même y est déjà… ). Quel est le format attendu dans la commande ci-dessus ? je ne trouve pas la doc.

merci de votre retour.

Bonjour @jim005

C’est le format de strtotime: PHP: strtotime - Manual
qui renvoie vers ça: PHP: Formats supportés de temps et de dates - Manual

'2020-05-25 08:45:30'

merci @jpty, donc ma commande devrait être, ainsi ?

this->checkAndUpdateCmd('temperature', 32, '2020-05-25 08:45:30');

Oui, c’est le bon format.
Mais pour ne pas avoir la date de valeur = date de collecte, j’utilise:

      $cmd->event($value, $dateValue);
      $cmd->setCache('collectDate', date('Y-m-d H:i:s'));

Après avoir vérifié que cmd est un object et que la même valeur n’est pas déjà historisée.
Ça donne:
image

Avec $this->checkAndUpdateCmd('consoan', $value, $dateValue);
image

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.