Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Menentukan Zon Waktu Pengguna dengan Tepat dalam Pembangunan Web Menggunakan PHP dan JavaScript?

Bagaimanakah Saya Boleh Menentukan Zon Waktu Pengguna dengan Tepat dalam Pembangunan Web Menggunakan PHP dan JavaScript?

Barbara Streisand
Barbara Streisandasal
2024-12-28 00:15:10479semak imbas

How Can I Accurately Determine a User's Timezone in Web Development Using PHP and JavaScript?

Amalan Terbaik untuk Menentukan Zon Waktu Pengguna dalam Pembangunan Web

Apabila membina aplikasi web, selalunya perlu mengetahui zon waktu pengguna untuk memberikan pengalaman setempat atau paparkan cap masa dengan tepat. Walaupun soalan ini mempunyai kemungkinan pendua, soalan ini tidak mempunyai butiran pelaksanaan khusus, jadi mari kita selami pendekatan yang disyorkan menggunakan PHP dan JavaScript.

Penyelesaian PHP

PHP menyediakan penyelesaian yang mudah kaedah untuk menentukan zon waktu pengguna menggunakan pembolehubah sesi. Coretan kod berikut menunjukkan cara:

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

Untuk menangkap zon waktu pengguna dan menyimpannya dalam pembolehubah sesi, anda boleh menggunakan skrip jQuery berikut:

<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>

Dalam skrip ini, anda perlu menggantikan "http://example.com/timezone.php" dengan URL domain sebenar anda.

Akhir sekali, buat fail dipanggil "timezone.php" dengan kod berikut:

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

JavaScript Solution

Sebagai alternatif, anda boleh menggunakan JavaScript untuk menentukan zon waktu pengguna jika PHP tidak tersedia . Berikut ialah coretan kod:

var visitortime = new Date();
var visitortimezone = "GMT " + -visitortime.getTimezoneOffset()/60;

Kod ini menangkap imbangan zon waktu semasa pelawat daripada GMT dan menyimpannya dalam pembolehubah "zon waktu pelawat".

Nota Tambahan

Kedua-dua pendekatan ini menganggap bahawa penyemak imbas pengguna menyokong pengesanan zon waktu. Jika tidak, anda mungkin perlu menggunakan kaedah alternatif seperti GeoIP atau input pengguna.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menentukan Zon Waktu Pengguna dengan Tepat dalam Pembangunan Web Menggunakan PHP dan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn