thinkphp 是一款優(yōu)秀的 php 框架,廣泛應(yīng)用于網(wǎng)站開發(fā)中。在實(shí)際開發(fā)中,我們經(jīng)常需要查詢數(shù)據(jù)庫(kù)中存儲(chǔ)的時(shí)間戳,并將其轉(zhuǎn)換為易于理解的日期時(shí)間格式。本文將介紹如何在 thinkphp 框架中進(jìn)行時(shí)間戳的查詢和轉(zhuǎn)換。
查詢時(shí)間戳
在 ThinkPHP 中,查詢時(shí)間戳可以使用以下兩種方式:
方法1:使用時(shí)間戳查詢條件
$map['create_time'] = ['between', [strtotime('2019-01-01'),strtotime('2019-12-31 23:59:59')]]; $list = Db::name('table_name')->where($map)->select();
以上代碼中,$map 數(shù)組中的 create_time 鍵是數(shù)據(jù)庫(kù)中存儲(chǔ)時(shí)間戳的字段名。strtotime() 函數(shù)將指定日期時(shí)間轉(zhuǎn)換為時(shí)間戳,然后通過 between 條件查詢指定時(shí)間段內(nèi)的數(shù)據(jù)。
方法2:使用查詢構(gòu)造器
$list = Db::name('table_name') ->whereTime('create_time', 'between', ['2019-01-01', '2019-12-31 23:59:59']) ->select();
以上代碼中,whereTime() 函數(shù)可以通過傳遞時(shí)間戳或日期時(shí)間字符串,根據(jù)不同的查詢條件生成 sql 語句。
轉(zhuǎn)換時(shí)間戳
將時(shí)間戳轉(zhuǎn)換為日期時(shí)間格式,ThinkPHP 提供了以下方法:
立即學(xué)習(xí)“PHP免費(fèi)學(xué)習(xí)筆記(深入)”;
方法1:使用 date() 函數(shù)
$time = time(); // 獲取當(dāng)前時(shí)間戳 $date = date('Y-m-d H:i:s', $time); // 轉(zhuǎn)換為日期時(shí)間格式
以上代碼中,date() 函數(shù)可以將時(shí)間戳轉(zhuǎn)換為指定格式的日期時(shí)間字符串。
方法2:使用 datetime() 函數(shù)
$list = Db::name('table_name')->select(); foreach($list as $item){ $item['create_time'] = datetime($item['create_time']); } echo json_encode($list);
以上代碼中,datetime() 函數(shù)可以將時(shí)間戳字段值轉(zhuǎn)換為日期時(shí)間格式,并返回轉(zhuǎn)換后的字符串。在實(shí)際開發(fā)中,可以將轉(zhuǎn)換后的日期時(shí)間格式用于展示或輸出。