在網路應用程式開發中,時間處理是一個非常重要的問題,而且經常需要對時間進行格式化,以在頁面上顯示正確的時間。對於PHP開發者來說,時間處理和格式化是非常常見且必要的操作。然而,對於一個使用中文作為主要語言的網站來說,如何將時間格式化為中文變得十分重要。這篇文章將介紹如何在PHP中將時間格式化為中文。
PHP中的時間函數
PHP中有很多日期和時間函數,如date()和time()等。這些函數允許我們在PHP腳本中取得當前日期和時間的資料。例如,我們可以使用以下程式碼來取得當前日期和時間:
$date = date('Y-m-d H:i:s'); echo $date;
這將輸出目前日期和時間,例如:"2021-01-01 10:30:00"。
將PHP時間格式化為中文時間
對於一個使用中文的網站來說,我們需要將目前的時間格式化為中文時間。下面是一個將時間格式化為中文的PHP函數:
function cn_date($format, $timestamp=null){ static $now; if(!isset($now)) $now=time(); if(!$timestamp) $timestamp=$now; $format=str_replace(array('周','星期'),array('周','周'),$format); $cn_week=array('日','一','二','三','四','五','六'); $en_week=array('Sun','Mon','Tue','Wed','Thu','Fri','Sat'); $days=array('今天','明天','后天'); $diff_day=ceil(($timestamp-strtotime('today 00:00'))/86400); if($diff_day<3) return $days[$diff_day].' '.date('H:i',$timestamp); $week=date('w',$timestamp); $cn_time=['凌晨','早上','上午','中午','下午','晚上','深夜']; $en_time=['0-5','6-8','9-11','12-13','14-18','19-21','22-24']; $time_arr=array_combine($en_time,$cn_time); $time_str=date('H',$timestamp).':'.str_pad(floor(date('i',$timestamp)/10)*10,2,'0'); $time_info=$time_arr[floor(date('H',$timestamp)/3)*3]; $cn_weekday='周'. $cn_week[$week]; $en_weekday=$en_week[$week]; return str_replace(array('W','w','D','d','H','h','I','i','S','s','AW','aw'), array($cn_weekday,$en_weekday,date('n',$timestamp),date('j',$timestamp),$time_str, date('g',$timestamp),$time_info,date('i',$timestamp),'秒',$diff_day.'天',$diff_day), $format); }
這個函數將時間格式化為中文時間,並且根據不同的日期輸出不同的資訊。例如,目前時間為2021年10月10日,13:30:00,經過格式化後,輸出為「今天 下午 01:30 」。
使用範例:
echo cn_date('Y年m月d日 w H:i:s', time());
這將輸出當前時間的格式化版本,例如:"2021年10月10日 週日 13:30:00"。
結論
在PHP中將時間格式化為中文是非常簡單的,我們只需要使用適當的函數和格式字串。本文提供了一個有效的PHP函數,它可以將時間格式化為中文,並且輸出的資訊非常實用。如果您正在開發一個中文網站,那麼這個函數應該非常適合您。
以上是如何在PHP中將時間格式化為中文的詳細內容。更多資訊請關注PHP中文網其他相關文章!