當前位置: 首頁> 最新文章列表> PHP時間戳轉換為幾秒、幾分鐘、幾小時、幾天前的實用代碼示例

PHP時間戳轉換為幾秒、幾分鐘、幾小時、幾天前的實用代碼示例

gitbox 2025-06-15

1. 引言

在PHP開發中,經常需要處理時間戳。時間戳是指自1970年1月1日00:00:00以來的秒數。直接處理時間戳不夠直觀,因此通常需要將其轉換為相對時間形式,比如幾秒、幾分鐘、幾小時或幾天前。本文將分享如何用PHP實現這種時間戳轉換。

2. 獲取當前時間戳

開始之前,先獲取當前時間戳。 PHP內置函數time()可以返回當前Unix時間戳(整數類型),表示自1970年1月1日00:00:00以來的秒數。

 <?php
$currentTimestamp = time();
?>

3. 將時間戳轉換為相對時間

3.1 轉換為分鐘前

要把時間戳轉換為“分鐘前”格式,可以通過計算當前時間戳和給定時間戳的差值,除以60得到分鐘數,然後返回結果:

 <?php
function convertToTimeAgo($timestamp) {
    $difference = time() - $timestamp;
    $minutes = floor($difference / 60);
    return $minutes . "分鐘前";
}

$timestamp = 1609459200;  // 示例時間戳
echo convertToTimeAgo($timestamp);  // 輸出:xx分鐘前
?>

3.2 轉換為小時前

類似地,轉換為“小時前”格式時,將差值除以3600,得到小時數:

 <?php
function convertToTimeAgo($timestamp) {
    $difference = time() - $timestamp;
    $hours = floor($difference / 3600);
    return $hours . "小時前";
}

$timestamp = 1609459200;
echo convertToTimeAgo($timestamp);  // 輸出:xx小時前
?>

3.3 轉換為天前

轉換為“天前”格式時,將差值除以86400,即一天的秒數,得到天數:

 <?php
function convertToTimeAgo($timestamp) {
    $difference = time() - $timestamp;
    $days = floor($difference / 86400);
    return $days . "天前";
}

$timestamp = 1609459200;
echo convertToTimeAgo($timestamp);  // 輸出:xx天前
?>

4. 總結

PHP提供了強大的時間處理函數,能夠輕鬆實現時間戳向相對時間的轉換,這在顯示文章發佈時間或社交媒體動態時間時非常實用。通過計算當前時間戳與目標時間戳的差值,可以得到相應的分鐘、小時或天數,便於友好展示時間信息。

在實際項目中,還可以根據需求對函數進行擴展,比如支持秒前顯示,或根據用戶時區調整時間顯示,使用戶體驗更加貼心。