当我将此添加到代码中时
$today1 = date("d");
它给了我服务器日期而不是用户本地系统日期。
我不想使用date_default_timezone_set()
如何使用 PHP 在那个时间点获取本地用户(不是 Web 主机服务器)的日期。
当我将此添加到代码中时
$today1 = date("d");
它给了我服务器日期而不是用户本地系统日期。
我不想使用date_default_timezone_set()
如何使用 PHP 在那个时间点获取本地用户(不是 Web 主机服务器)的日期。
PHP 在服务器上运行,因此使用诸如 time() 和 localtime() 之类的函数不会让您获得客户端的时间。
Javascript 在客户端的系统上运行,因此它可以获得客户端的时间。但是如何让 PHP 脚本可以使用时间是一个棘手的部分。
答案是AJAX Request,您可以将时间从 ajax 发送到脚本文件,该文件将使用该值并为您提供结果。
喜欢
var clientTime = Date.now();
$.get("yourpage.php", { time: clientTime }, function(data)
// the response in data
});
除非默认时区功能,否则您无法做到这一点。PHP是服务器端而不是客户端。您可能需要为此使用 javascript -
var now = new Date();
now.format("m/dd/yy");
// Returns, e.g., 6/09/07
// Can also be used as a standalone function
dateFormat(now, "dddd, mmmm dS, yyyy, h:MM:ss TT");
// Saturday, June 9th, 2007, 5:46:21 PM
// You can use one of several named masks
now.format("isoDateTime");
// 2007-06-09T17:46:21
// ...Or add your own
dateFormat.masks.hammerTime = 'HH:MM! "Can\'t touch this!"';
now.format("hammerTime");
// 17:46! Can't touch this!
// When using the standalone dateFormat function,
// you can also provide the date as a string
dateFormat("Jun 9 2007", "fullDate");
// Saturday, June 9, 2007
// Note that if you don't include the mask argument,
// dateFormat.masks.default is used
now.format();
// Sat Jun 09 2007 17:46:21
// And if you don't include the date argument,
// the current date and time is used
dateFormat();
// Sat Jun 09 2007 17:46:22
// You can also skip the date argument (as long as your mask doesn't
// contain any numbers), in which case the current date/time is used
dateFormat("longTime");
// 5:46:22 PM EST
// And finally, you can convert local time to UTC time. Either pass in
// true as an additional argument (no argument skipping allowed in this case):
dateFormat(now, "longTime", true);
now.format("longTime", true);
// Both lines return, e.g., 10:46:21 PM UTC
// ...Or add the prefix "UTC:" to your mask.
now.format("UTC:h:MM:ss TT Z");
// 10:46:21 PM UTC
或试试这个 - https://bitbucket.org/pellepim/jstimezonedetect
只需使用 AJAX 将日期时间值发送到 PHP 文件。它很简单,你可以使用 jQuery。然后设置cookies/session。而已!