La fonction gmmktime() est utilisée pour renvoyer un horodatage Unix basé sur GMT (Greenwich Mean Time). Sa fonction est similaire à mktime(), mais la différence est que gmmktime() n'est pas affecté par le fuseau horaire local, mais calcule toujours en fonction de l'heure GMT.
gmmktime(hour, minute, second, month, day, year, is_dst);
heure : spécifiez le nombre d'heures.
minute : spécifiez le nombre de minutes.
seconde : spécifiez le nombre de secondes.
mois : spécifiez le mois.
jour : Précisez la date.
année : Précisez l’année.
is_dst : indique s'il s'agit de l'heure d'été. La fonction étant basée sur l’heure GMT, ce paramètre n’a aucun impact sur les résultats.
Cette fonction renvoie un horodatage Unix de type entier représentant le nombre de secondes écoulées depuis le 1er janvier 1970 à 00:00:00 GMT jusqu'à l'heure spécifiée.
Voici un exemple de base :
<?php
$time = gmmktime(0, 0, 0, 9, 10, 2017);
print($time . "\n");
?>
1505001600
Un autre exemple montrant comment utiliser l'horodatage généré avec la fonction date() :
<?php
echo "Nov 10, 2017 was on a " . date("l", gmmktime(0, 0, 0, 11, 10, 2017));
?>
Nov 10, 2017 was on a Friday
La fonction gmmktime() est utile lorsqu'il s'agit de calculs de temps indépendants du fuseau horaire, tels que la journalisation entre fuseaux horaires, les applications internationales ou les comparaisons de temps dans la norme GMT. En maîtrisant l’utilisation de cette fonction, les développeurs peuvent gérer et transformer les données temporelles de manière plus flexible.