Show User's Current Time

时间:2021-11-30 作者:Foysal

我正在开发一个插件。我想显示用户的时间。

我正在使用此代码。

date(\'g:i A\');
但我没有得到确切的时间。

我读过this 邮递但我没有得到任何解决方案。

如何显示用户的当前时间?

1 个回复
SO网友:Buttered_Toast

如果使用api没有问题,可以执行以下操作。

// check if user IP exists
if (!empty($_SERVER[\'REMOTE_ADDR\'])) {
    // get user data based on IP (not always correct)
    $user_ip_data = file_get_contents(\'http://ipinfo.io/\' . $_SERVER[\'REMOTE_ADDR\'] . \'/json\');

    // check if is json object
    if (!empty($user_ip_data) && $user_ip_data[0] === \'{\' && substr($user_ip_data, -1) === \'}\') {
        // create php object from json
        $user_ip_data = json_decode($user_ip_data);

        // check if timezone exists
        if (!empty($user_ip_data->timezone)) {
            // create new date time object based on the user timezone
            $date = new DateTime(\'now\', new DateTimeZone($user_ip_data->timezone));

            // output the time
            echo $date->format(\'d/m/Y H:i:s\');
        }
    }
}
我为每一行代码提供了注释,以便您更好地理解每一行代码的作用。

使用vpn对其进行测试,以检查时区是否发生变化,确实如此。

相关推荐