首頁 後端開發 php教程 將資料庫中儲存的時間戳記轉換為過去的時間格式

將資料庫中儲存的時間戳記轉換為過去的時間格式

Aug 08, 2016 am 09:29 AM
break case diff str time

這個功能一般用在微博、部落格的文章發佈時間顯示。例如:在新浪微博發布了一篇微博,如果是今天發布的它會顯示XX秒、XX小時前發布而不是顯示具體的時間。如果轉發一篇先前發布的微博則原微博顯示其發布的時間。
那麼如何實現呢?程式碼如下:

<code><span>/**格式化时间函数
 *<span> @param</span> $time 需要格式化的时间戳
 */</span><span><span>function</span><span>time_format</span><span>(<span>$time</span>)</span> {</span><span>$now</span> = time();
    <span>$tody</span> = strtotime(date(<span>'Y-m-d'</span>));
    <span>$diff</span> = <span>$now</span> - <span>$time</span>;
    <span>$str</span> = <span>''</span>;
    <span>switch</span> (<span>$time</span>) {
        <span>case</span><span>$diff</span> < <span>60</span>:
            <span>$str</span> = <span>$diff</span> . <span>'秒前'</span>;
            <span>break</span>;
        <span>case</span><span>$diff</span> < <span>3600</span>:
            <span>$str</span> = floor(<span>$diff</span> / <span>60</span>) . <span>'分钟前'</span>;
            <span>break</span>;
        <span>case</span><span>$diff</span> < (<span>3600</span> * <span>8</span>):
            <span>$str</span> = floor(<span>$diff</span> / <span>3600</span>) . <span>'小时前'</span>;
            <span>break</span>;
        <span>case</span><span>$time</span> > <span>$tody</span>:
            <span>$str</span> = <span>'今天'</span> . date(<span>'Y-m-d H:i:s'</span>, <span>$time</span>);
            <span>break</span>;
        <span>default</span>:
            <span>$str</span> = date(<span>'Y-m-d H:i:s'</span>, <span>$time</span>);
    }

    <span>return</span><span>$str</span>;
}

<span>$time</span> = <span>1423110837</span>;<span>//模拟保存在数据库中的时间戳</span><span>echo</span> time_format(<span>$time</span>);</code>
登入後複製

解讀:
1.首先我們要取得目前時間即:nowow ); 2 0 0 tody = strtotime(date(‘Y-m-d’)); 3、取得資料庫中的時間戳記和當前時間的差值。即:
difif now - $time; 4.透過switch判斷資料庫中的時間戳記來顯示對應的時間格式(時、分、秒、具體時間) 以上就介紹了將資料庫中保存的時間戳轉換為過去的時間格式,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1655
14
CakePHP 教程
1413
52
Laravel 教程
1306
25
PHP教程
1252
29
C# 教程
1226
24
time包的單調時鐘處理 time包的單調時鐘處理 Aug 04, 2023 pm 05:45 PM

我們今天主要是來看看golang time 套件的時間應用方式。兩者的一般規則是“wall time”用於告知時間,而“monotonic clock”用於測量時間;除外還有其他的時鐘處理方式。

用vimdiff取代svn diff:比較程式碼的工具 用vimdiff取代svn diff:比較程式碼的工具 Jan 09, 2024 pm 07:54 PM

在linux下,直接使用svndiff指令查看程式碼的修改是很吃力的,於是在網路上搜尋了一個比較好的解決方案,就是讓vimdiff作為svndiff的檢視程式碼工具,尤其對於習慣用vim的人來說真的是很方便。當使用svndiff指令比較某個檔案的修改前後時,例如執行下列指令:$svndiff-r4420ngx_http_limit_req_module.c那麼實際上會向預設的diff程式傳送如下指令:-u-Lngx_http_limit_req_module.c(revision4420)-Lngx_

HMD Skyline 獲得新的顏色選項和官方磁性外殼 HMD Skyline 獲得新的顏色選項和官方磁性外殼 Aug 23, 2024 am 07:04 AM

上個月推出 HMD Skyline(亞馬遜售價 499 美元)時,它有兩種顏色:霓虹粉和扭曲黑。現在,第三種顏色加入了藍色托帕石的行列。 HMD Global 也宣布了 PH 的官方案例

Python內建類型str原始碼分析 Python內建類型str原始碼分析 May 09, 2023 pm 02:16 PM

1Unicode電腦儲存的基本單位是位元組,由8個位元組組成。由於英文只由26個字母加若干符號組成,因此英文字元可以直接用位元組來保存。但是其他語言(例如中日韓等),由於字元眾多,不得不使用多個位元組來進行編碼。隨著電腦科技的傳播,非拉丁文字元編碼技術不斷發展,但是仍有兩個比較大的限制:不支援多語言:一種語言的編碼方案不能用於另一種語言沒有統一標準:例如中文就有GBK、GB2312、GB18030等多種編碼標準由於編碼方式不統一,開發人員就需要在不同編碼之間來回轉換,不可避免地會出現很多錯

switch case判斷變數 switch case判斷變數 Feb 19, 2024 am 08:04 AM

switchcase判斷變量,需要具體程式碼範例在程式設計中,我們經常需要根據不同的變數值來執行不同的操作。 switchcase語句是一種方便的結構,可以根據變數的值來選擇不同的程式碼區塊來執行。以下是一個具體的程式碼範例,展示如何使用switchcase語句判斷變數的不同取值:#includeintmain(){

Java8 Time Api如何使用 Java8 Time Api如何使用 Apr 28, 2023 pm 12:25 PM

1.概述作為本文的一部分,讓我們從現有Date和CalendarAPI存在的一些問題入手,來探討新的Java8Date和TimeAPI如何解決這些問題。我們也將搞一搞Java8時間類別庫中的核心類,例如LocalDate,LocalTime,LocalDateTime,ZonedDateTime,Period,Duration以及它們的api。 2.舊的時間API(java8之前)的問題線程安全-Date和Calendar類別不是線程安全的,使開發者難以調試這些api的並發問題,需要編寫額外的程式碼來處

python中time和datetime的差別及用法是什麼 python中time和datetime的差別及用法是什麼 May 02, 2023 am 11:01 AM

一.Python中表示時間的兩種方式:時間戳:相對於1970.1.100:00:00以秒計算的偏移量,唯一的時間元組struct_time:共有9個元素>tm_year:年1-12> tm_mon:月1-12>tm_mday:日1-31>tm_hour:時0-23>tm_min:分0-59>tm_sec:秒0-59>tm_wday:星期0-6(0表示週日)>tm_day:一年中的第幾天1-366>tm_isdst:是否為夏令,預設為-1二.ti

Python中__str__和__repr__有什麼異同點 Python中__str__和__repr__有什麼異同點 Apr 29, 2023 pm 07:58 PM

__str__和__repr__有什麼異同?字串的表示形式我們都知道,Python的內建函數repr()能夠把物件用字串的形式表達出來,方便我們辨認。這就是“字串表示形式”。 repr()就是透過__repr__這個特殊方法得到一個物件的字串表示形式的。如果沒有實作__repr__,當我們在控制台裡列印一個向量的實例時,得到的字串可能會是。 >>>classExample:pass>>>print(str(Example()))>>>

See all articles