php - Une Heure plus Tôt que ce Que l'on Datetime
Je vais avoir un problème ici..
Censés j'ai ce genre de datetime.
$date = strtotime($date);
J'ai besoin de cela pour être converti en Unix timestamp format mais une heure plus tôt..j'ai essayé
$date = strtotime($date-86400)
mais il me semblait que c'est mauvais. Il a retourné 0 quand je me suis glissé dans la table.
Quel est le moyen le plus approprié pour y parvenir?
Grâce.
Il y a 3600 secondes dans une heure et 86400 secondes dans une journée. Vous devez soustraire de 3600 secondes.
strtotime($date) - 3600;
OriginalL'auteur foxns7 | 2012-02-27
Vous devez vous connecter pour publier un commentaire.
strtotime vous donnera le timestamp unix de votre date. À partir de ce timestamp, vous déduisez de votre heure:
Si vous appelez
strtotime($date - 3600)
, c'est comme l'obtention de l'heure pour -3600 (par exemplestrtotime(-3600)
) qui n'a pas de sens parce que la fonction strtotime attend une chaîne de caractères en tant que premier argument.Ah oui...j'étais totalement dans le désordre...je ne devrais pas compter 60*60*24...ça me donne de secondes dans une journée... stupide moi 🙁
OriginalL'auteur Alexandre D'Eschambeault
Que vous pouvez faire:
Espère que cela aide
date()
etstrtotime()
, Il permettrait d'améliorer vos réponse avec quelques explications.OriginalL'auteur Sudhir Bastakoti
86400 secondes est un JOUR, pas une heure.
La sortie de la fonction strtotime() est un timestamp unix. 3600 secondes plus tôt, c'est que timestamp moins d'une heure. Donc:
Ou, selon le format de l'original de $somestring:
Et n'oubliez pas de date_default_timezone_set()
OriginalL'auteur ghoti
Personne n'a offert un
DateTime
objet encore trouvé de solution, je vais donc.C'est la méthode la plus moderne pour le traitement datetime et ne nécessite aucun calcul de minutes & secondes.
J'ai toujours envie de tomber dans une sorte de fuseau horaire déclaration à faire des choses définitives. L'Heure d'été est normalement un souci avec datetime manipulations, mais probablement d'accord dans ce cas. N'hésitez pas à modifier le fuseau horaire pour votre cas.
Manuel PHP liens:
Code (y compris formaté temps pour la comparaison) Le Lien De Démonstration:
De sortie:
OriginalL'auteur mickmackusa
Essayer cette requête
Utilisation DATE_ADD pour insérer une date de valeur qui est à 1 heure de moins qu'à l'heure actuelle.
mysql
solution, ni uneINSERT
. Toutes les réponses doivent également inclure une sorte d'explication, afin que les lecteurs puissent comprendre/profiter de la réponse ou de l'approche.OriginalL'auteur Naveen Kumar