Unix時間戳轉化時間

2021-09-11 01:55:34 字數 1638 閱讀 2021

因為專案中經常用到unix時間戳的轉化,今天就總結一下

php中

這種方式在php程式中完成轉換,優點是無論是不是資料庫中查詢獲得的資料都能轉換,轉換範圍不受限制,缺點是占用php解析器的解析時間,速度相對慢。

用函式:

date() 一般形式:date(『y-m-d h:i:s』, unix時間)

php中將正常時間戳轉化為unix時間戳

用函式:echo strtotime(「now」), 「\n」;

echo strtotime(「10 september 2000」), 「\n」;

echo strtotime("+1 day"), 「\n」;

echo strtotime("+1 week"), 「\n」;

echo strtotime("+1 week 2 days 4 hours 2 seconds"), 「\n」;

echo strtotime(「next thursday」), 「\n」;

echo strtotime(「last monday」), 「\n」;

mysql中

這種方式在mysql查詢語句中轉換,優點是不占用php解析器的解析時間,速度快,缺點是只能用在資料庫查詢中,有侷限性。

unix時間戳轉換為日期用函式: from_unixtime()

一般形式:select from_unixtime(1156219870);

日期轉換為unix時間戳用函式: unix_timestamp()

一般形式:select unix_timestamp(『2006-11-04 12:23:00′);

舉例:mysql查詢當天的記錄數:

$sql=」select * from message where date_format(from_unixtime(chattime),』%y-%m-%d』) = date_format(now(),』%y-%m-%d』) order by id desc」;

js中unix時間戳轉換為日期用函式

new date(unix時間戳*1000)

但是格式並不盡如人意,自定義format函式對其進行格式轉化

// 對date的擴充套件,將 date 轉化為指定格式的string

// 月(m)、日(d)、小時(h)、分(m)、秒(s)、季度(q) 可以用 1-2 個佔位符,

// 年(y)可以用 1-4 個佔位符,毫秒(s)只能用 1 個佔位符(是 1-3 位的數字)

date.prototype.format = function(fmt)

;if(/(y+)/.test(fmt))

fmt=fmt.replace(regexp.$1, (this.getfullyear()+"").substr(4 - regexp.$1.length));

for(var k in o)

if(new regexp("("+ k +")").test(fmt))

fmt = fmt.replace(regexp.$1, (regexp.$1.length==1) ? (o[k]) : ((「00」+ o[k]).substr((""+ o[k]).length)));

return fmt;

}new date(unix時間戳*1000).format(「yyyy-mm-dd hh:mm:ss」);

vue cli時間戳轉化時間

本人是乙個前端初學者,有一段時間使用vue cli 其中遇到一些問題。前端接收後台傳回的資料,其中最常見的就是時間戳,這樣就是需要我們自己轉化為時間格式 所以使用new date 處理 如下 xport function formatdate date,fmt let o for let k in ...

簡單時間協議SNTP及轉化時間戳程式

工作原理 sntp 協議採用客戶 伺服器工作方式,伺服器通過接收 gps訊號或自帶的原子鐘作為系統的時間基準,客戶機通過定期訪問伺服器提供的時間服務獲得準確的時間資訊,並調整自己的系統時鐘,達到網路時間同步的目的。系統時鐘同步的工作過程如下 device a 傳送乙個ntp報文給device b,該...

時間戳轉格式化時間和時間轉時間戳

時間戳轉格式化時間 param params 13位時間戳 return type yyyy mm dd yyyy mm dd hh mm ss yyyy mm dd yyyy mm dd hh mm ss export const timestampfromat params,type 舉例par...