Note :
Il offre les fonctions suivantes:
- now : renvoie le timestamp de l'instant présent au format Templeet
- timestamp2day , timestamp2month , timestamp2year , timestamp2hhmm et timestamp2hhmmss : manipulation d'un timestamp
- format_timestamp : formate un timestamp Templeet
- format_unixtimestamp : formate un timestamp UNIX
now
La fonction now permet d'obtenir la date et l'heure locale au format AAAAMMJJhhmmss c'est à dire: l'année sur 4 chiffres et le mois, le jour, les heures, minutes et secondes sur 2 chiffres (ex: 20020814203015 pour le 14/08/2002 à 20:30 et 15 secondes. Elle ne prend pas de paramètre.
Exemple :
~now() => 20250617034536
Les fonctions timestamp2
Il existe 5 fonctions pour manipuler une date au format AAAAMMJJhhmmss.
Ces fonctions sont :
- ~timestamp2day
- ~timestamp2month
- ~timestamp2year
- ~timestamp2hhmm
- ~timestamp2hhmmss
Elles prennent un seul paramètre : la date à traiter.
Exemples :
~timestamp2month('20250617034536') => 06 ~timestamp2hhmmss('20250617034536') => 03:45:36 ~timestamp2year('20250617034536') => 2025
format_timestamp
La fonction ~format_timestamp() prend plusieurs paramètres. Le premier est le format de destination, le deuxième la date à traiter (toujours au format AAAAMMJJhhmmss).
~format_timestamp('%d/%m/%y %H:%M','20250617034536')
Cette commande donnera : 17/06/25 03:45
Les caractères suivants sont utilisés pour spécifier le format de la date :
%a - nom abrégé du jour de la semaine (local).%A - nom complet du jour de la semaine (local).
%b - nom abrégé du mois (local).
%B - nom complet du mois (local).
%c - représentation préférée pour les dates et heures, en local.
%C - numéro de siècle (l'année, divisée par 100 et arrondie entre 00 et 99)
%d - jour du mois en numérique (intervalle 01 à 31)
%D - identique à %m/%d/%y
%e - numéro du jour du mois. Les chiffres sont précédés d'un espace (de ' 1' à '31')
%h - identique à %b
%H - heure de la journée en numérique, et sur 24-heures (intervalle de 00 à 23)
%I - heure de la journée en numérique, et sur 12-heures (intervalle 01 à 12)
%j - jour de l'année, en numérique (intervalle 001 à 366)
%m - mois en numérique (intervalle 1 à 12)
%M - minute en numérique
%n - newline character
%p - soit `am' ou `pm' en fonction de l'heure absolue, ou en fonction des valeurs enregistrées en local.
%r - l'heure au format a.m. et p.m.
%R - l'heure au format 24h
%S - secondes en numérique
%t - tabulation
%T - l'heure actuelle (égal à %H:%M:%S)
%u - le numéro de jour dans la semaine, de 1 à 7. (1 représente Lundi)
%U - numéro de semaine dans l'année, en considérant le premier dimanche de l'année comme le premier jour de la première semaine.
%V - le numéro de semaine comme défini dans l'ISO 8601:1988, sous forme décimale, de 01 à 53. La semaine 1 est la première semaine qui a plus de 4 jours dans l'année courante, et dont Lundi est le premier jour.
%W - numéro de semaine dans l'année, en considérant le premier lundi de l'année comme le premier jour de la première semaine
%w - jour de la semaine, numérique, avec Dimanche = 0
%x - format préféré de représentation de la date sans l'heure
%X - format préféré de représentation de l'heure sans la date
%y - l'année, numérique, sur deux chiffres (de 00 à 99)
%Y - l'année, numérique, sur quatre chiffres
%Z - fuseau horaire, ou nom ou abréviation
%% - un caractère `%' littéral
format_unixtimestamp
Il existe un autre format de date assez répandu, le timestamp UNIX. Un timestamp UNIX est le nombre de secondes écoulées depuis le 1er janvier 1970 à 00h 00m 00s GMT. Par exemple, pour le 09/09/01 à 03:46:40, le timestamp correspondant est 1000000000.
L'utilisation de ~format_unixtimestamp() est exactement la même que ~format_timestamp()
~format_unixtimestamp('%d/%m/%y %H:%M:%S', 1750124736)
L'exemple précédent retournera "17/06/25 03:45:36".