Maison  >  Article  >  développement back-end  >  Truncate() est-il vraiment le meilleur moyen d'obtenir le début de la journée locale ?

Truncate() est-il vraiment le meilleur moyen d'obtenir le début de la journée locale ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-21 12:57:14662parcourir

Is Truncate() Really the Best Way to Get the Local Beginning of Day?

Obtenir le début de la journée locale

La question concerne la recherche du début de la journée en cours dans le fuseau horaire local, communément appelé "début de journée" (BOD). Le problème se pose lorsque l'on considère que les fuseaux horaires peuvent avoir des jours plus courts ou plus longs en raison des ajustements de l'heure d'été (DST).

Le code fourni dans la question, Bod(), calcule correctement le BOD en extrayant l'année, le mois. , et les composants du jour et la reconstruction d'un nouvel objet temporel. Cette méthode reflète avec précision l'heure locale sans nécessiter de manipulation spécialisée du fuseau horaire.

Cependant, la réponse acceptée, Truncate(), prétend être une meilleure solution mais présente plusieurs inconvénients. Premièrement, il ne fournit pas le BOD local car il tronque l'heure UTC, ce qui entraîne un décalage horaire par rapport à l'heure locale souhaitée.

Deuxièmement, Truncate() suppose une journée de 24 heures, ce qui n'est pas toujours précis. Dans les zones où l'heure d'été est passée, les jours peuvent être plus courts ou plus longs que 24 heures. Par conséquent, Bod() est une solution plus fiable et universellement applicable pour obtenir la DBO locale.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn