Maison  >  Article  >  interface Web  >  Comment déterminer efficacement le fuseau horaire d'un utilisateur en PHP et JavaScript ?

Comment déterminer efficacement le fuseau horaire d'un utilisateur en PHP et JavaScript ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-01 09:12:02476parcourir

How to Efficiently Determine a User's Time Zone in PHP and JavaScript?

Comment déterminer le fuseau horaire d'un utilisateur

Problème :

Comment déterminer efficacement le fuseau horaire d'un utilisateur dans les deux PHP et JavaScript ?

Solution :

En PHP, vous pouvez récupérer le décalage horaire en tant que variable de session :

<code class="php"><?php
session_start();
$timezone = $_SESSION['time'];
?></code>

À faire ceci via JavaScript, incluez jQuery et incorporez le code suivant dans le fichier section :

<code class="javascript"><script type="text/javascript">
$(document).ready(function() {
    if ("<?php echo $timezone; ?>".length == 0){
        var visitortime = new Date();
        var visitortimezone = "GMT " + -visitortime.getTimezoneOffset()/60;
        $.ajax({
            type: "GET",
            url: "http://example.com/timezone.php",
            data: 'time='+ visitortimezone,
            success: function(){
                location.reload();
            }
        });
    }
});
</script></code>

Enfin, créez un fichier timezone.php avec :

<code class="php"><?php
session_start();
$_SESSION['time'] = $_GET['time'];
?></code>

Cette combinaison de PHP et JavaScript récupérera le fuseau horaire de l'utilisateur et le stockera en tant que variable $timezone en PHP.

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