mysql timestampt 输入字符串的格式不正确._mysql中取出的时间格式不正确
ps:
最終采用了一樓推薦的momentjs進(jìn)行轉(zhuǎn)換,
希望幫到后來(lái)人,此坑完結(jié).
mysql中存儲(chǔ)的數(shù)據(jù)類(lèi)型是datetime
select出來(lái)都是utc時(shí)間 格式如下:
2019-07-08T03:38:27.000Z
因?yàn)閡tc 2019-07-08T03:38:27.000Z格式不是北京時(shí)間且格式不是需要的,
所以取出我對(duì)數(shù)據(jù)進(jìn)行了轉(zhuǎn)換 ,轉(zhuǎn)換方法如下:
function formatUTC(utc_datetime) {
// 轉(zhuǎn)為正常的時(shí)間格式 年-月-日 時(shí):分:秒
var T_pos = utc_datetime.indexOf('T');
var Z_pos = utc_datetime.indexOf('Z');
var year_month_day = utc_datetime.substr(0, T_pos);
var hour_minute_second = utc_datetime.substr(T_pos + 1, Z_pos - T_pos - 1);
var new_datetime = year_month_day + " " + hour_minute_second; // 2017-03-31 08:02:06
// 處理成為時(shí)間戳
timestamp = new Date(Date.parse(new_datetime));
timestamp = timestamp.getTime();
timestamp = timestamp / 1000;
// 增加8個(gè)小時(shí),北京時(shí)間比utc時(shí)間多八個(gè)時(shí)區(qū)
var timestamp = timestamp + 8 * 60 * 60;
// 時(shí)間戳轉(zhuǎn)為時(shí)間
var beijing_datetime = new Date(parseInt(timestamp) * 1000).toLocaleString().replace(/年|月/g, "-").replace(/日/g, " ");
return beijing_datetime;
}
本地開(kāi)發(fā)環(huán)境后臺(tái)返回前臺(tái)得到的數(shù)據(jù)都是正確的格式 YYYY-MM-DD hh-mm-ss 如: 1999-10-10 08:30:10 ,字符串
但是,
項(xiàng)目上傳到centOS服務(wù)器上之后,取出的時(shí)間都變成了 7/8/2019, 7:01:12 AM (字符串)
這并不是我想要的,排查原因,看到瀏覽器端得到的數(shù)據(jù)就已經(jīng)是7/8/2019, 7:01:12 AM類(lèi)型了,不是前端顯示問(wèn)題,
說(shuō)明還是服務(wù)器除了問(wèn)題,但是不知道哪里出了問(wèn)題?為什么本地mac開(kāi)發(fā)環(huán)境沒(méi)有異常呢?
如果解決不了的話(huà)這種日期格式怎么轉(zhuǎn)換,求指教!
ps:
最終采用了一樓推薦的momentjs進(jìn)行轉(zhuǎn)換,
希望幫到后來(lái)人,此坑完結(jié).
總結(jié)
以上是生活随笔為你收集整理的mysql timestampt 输入字符串的格式不正确._mysql中取出的时间格式不正确的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 个人怎么办公积金 个人如何办理公积金
- 下一篇: laradoc mysql accces