Je lis un timestamp mysql ne peut contenir une valeur de 19700101000000 à l'année 2037. Je doute sérieusement que mon application sera autour alors, eh bien Je suis sûr que ce n'est pas le cas, mais quelle idée les gens vont-ils utiliser pour un horodatage, un champ de texte?Dois-je utiliser un timestamp ou un champ de texte dans MySQl pour l'heure/date UTC?
Ci-dessous un exemple de la façon dont j'insère actuellement un enregistrement mysql avec un champ mysql datetime et vous pouvez voir que j'utilise maintenant() dans le PHP ci-dessous, maintenant je suis Recodification mon site et je vais Offrir un support de fuseau horaire pour afficher les heures correctes aux utilisateurs, j'ai donc besoin d'enregistrer la date et l'heure comme un horodatage UTC.
<?PHP
$sql = "INSERT INTO online_users
(user_id,
online_id,
ip,
datetime,
location,
gender)
values ('$cache->userid,$unid,$LOCALIP,NOW(),$location,$g)";
executeQuery($sql);
?>
Sur la base de mon code ci-dessus et mes informations ci-dessus, comment pourrais-je formater ce code pour insérer l'heure et la date en UTC et dois-je utiliser un champ d'horodatage ou d'un champ de texte dans MySQL? Je devrai modifier l'heure de mon php en le montrant souvent, par exemple sur certains posts je calcule le temps qui s'est écoulé depuis le temps mysql (2 jours et 4 heures et 34 secondes). J'ai également besoin de temps pour faire des recherches sur des choses comme des utilisateurs la semaine dernière pour m'inscrire. Je ne demande pas comment faire ce genre de choses que je viens de publier pour montrer ce que je vais utiliser le temps juste au cas où cela aiderait à déterminer la meilleure méthode que je devrais enregistrer comme.
NOTE: La fonction UNIX_TIMESTAMP() de MySQL retournera la valeur entière réelle d'une colonne TIMESTAMP, sans conversion. (Cela vous donne le même ensemble de résultats, renvoyant une valeur INTEGER de la base de données.) Comme vous le constatez, le problème que vous devez gérer avec un type de données TIMESTAMP (ou INTEGER) dans la base de données est implicite. – spencer7593