我想使用JavaScript将我的国家日期和时间存储在JQuery变量中。该日期和时间应该是默认的mysql数据库日期时间格式。JQuery日期和时间不应是本地日期时间,也不应用于自动获取时区日期时间。那应该是UTC +09:30设定的日期和时间。
PHP代码是mysql datetime格式的:
CONVERT_TZ(NOW(), 'UTC', '+09:30')或
告诉我如何用PHP将JQuery NOW()日期时间数据转换为格式。
最后的答案应该是mysql datetime格式的日期和时间,并且应该是javascript var可验证的或PHP可验证的。
发布于 2017-05-12 16:49:25
Javascript日期和时间将位于本地时区。
如果您想像mysql时间一样显示时间,那么您必须在javascript中将本地时间转换为服务器时区。
您可以使用date.getTimezoneOffset()来获取本地时间和utc之间的偏移量,然后使用它将本地时间转换为utc+9:30。
编辑
如何将JQuery NOW()日期时间数据转换为PHP ()日期时间格式。 最后的答案应该是mysql datetime格式的日期和时间,并且应该是javascript var可验证的或PHP可验证的。
将地区转换为不同时区的示例( UTC + 9:30 )
var localDate = $.now();
localDate = new Date(localDate);
console.log("local datetime is ", printMysqlFormat(localDate));
var offset = localDate.getTimezoneOffset();
var offsetMilliseconds = offset * 60 * 1000;
var serverMilliseconds = localDate.getTime() + offsetMilliseconds + (570 * 60 * 1000)
var serverdate = new Date(serverMilliseconds);
console.log("localtime in server timezone is", printMysqlFormat(serverdate));
function printMysqlFormat(d) {
var day = d.getDate() + "";
var month = (d.getMonth() + 1) + "";
var year = d.getFullYear() + "";
var hour = d.getHours() + "";
var minutes = d.getMinutes() + "";
var seconds = d.getSeconds() + "";
day = day.length == 1 ? "0" + day : day;
month = month.length == 1 ? "0" + month : month;
hour = hour.length == 1 ? "0" + hour : hour;
minutes = minutes.length == 1 ? "0" + minutes : minutes;
seconds = seconds.length == 1 ? "0" + seconds : seconds;
return day + "-" + month + "-" + year + " " + hour + ":" + minutes + ":" + seconds;
}<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
https://stackoverflow.com/questions/43942383
复制相似问题