Existe-t-il un moyen de connaître le fuseau horaire des visiteurs en PHP?Comment obtenir le fuseau horaire d'un visiteur en PHP?
Répondre
Vous pouvez faire correspondre l'adresse IP de l'utilisateur avec la fin de la base de données GeoIP pour extraire sa région. Vérifiez également cette API http://www.ipinfodb.com/ip_location_api.php
@Nazairy // wow..qui est un excellent site web. C'est gratuit aussi. Merci!! – Moon
Que se passe-t-il si une plage IP traverse un fuseau horaire? –
J'ai fait Google pour ce problème et n'ai rien trouvé sauf notre conversation. Je suppose que par chevauchement, vous voulez dire convertir IP en Longitude ce qui nous donnerait un résultat flou. Avec adresse IP de base de données GeoIP liée à la ville, qui appartient à un fuseau horaire spécifique. – Nazariy
Vous ne pouvez pas le faire seul avec PHP car cette information n'est pas disponible. Toutefois, si vous connaissez l'emplacement de l'utilisateur, vous pouvez effectuer une localisation géographique et déterminer un fuseau horaire.
Vous avez besoin de l'aide de javascript. Je googlé l'extrait JS suivant qui retourne compenser le fuseau horaire du client:
var tzo=(new Date().gettimezoneoffset()/60)*(-1);
A partir de là, vous pouvez définir un cookie avec JS qui est accessible avec PHP. Alternativement, vous pouvez saisir cette information avec un appel ajax.
Paramétrer le cookie et y accéder avec PHP est une excellente idée. Merci! – Moon
Et si l'utilisateur utilisait son ordinateur portable à l'étranger? – Nazariy
@Nazariy Le fuseau horaire indiqué à l'utilisateur doit refléter ce qui est défini dans son système d'exploitation. S'ils sont à l'étranger et veulent voir des fuseaux horaires relatifs à cela, ils devraient le définir comme tel dans le système d'exploitation. Comme toujours, les informations de fuseau horaire doivent être présentes à chaque date affichée sur votre site pour éviter toute confusion. –
il pourrait y avoir un moyen, mais c'est trop compliqué pour une procédure comme ça. –