将数据库中保存的时间戳转换为过去的时间格式
这个功能一般用在微博、博客的文章发布时间显示上。例如:在新浪微博发布了一篇微博,如果是今天发布的它会显示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> 60: <span>$str</span> = <span>$diff</span> . <span>'秒前'</span>; <span>break</span>; <span>case</span><span>$diff</span> 3600: <span>$str</span> = floor(<span>$diff</span> / <span>60</span>) . <span>'分钟前'</span>; <span>break</span>; <span>case</span><span>$diff</span> 3600 * <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、首先我们要获取当前时间即:
3、获取数据库中的时间戳和当前时间的差值。即:
4、通过switch判断数据库中的时间戳来显示对应的时间格式(时、分、秒、具体时间)
以上就介绍了将数据库中保存的时间戳转换为过去的时间格式,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

我们今天主要是来看一看golang time 包的时间应用方式。两者的一般规则是「wall time」用于告知时间,而「monotonic clock」用于测量时间;除外还有其他的时钟处理方式。

在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(亚马逊售价 499 美元)时,它有两种颜色:霓虹粉和扭曲黑。现在,第三种颜色加入了蓝色托帕石的行列。 HMD Global 还宣布了 PH 的官方案例

1Unicode计算机存储的基本单位是字节,由8个比特位组成。由于英文只由26个字母加若干符号组成,因此英文字符可以直接用字节来保存。但是其他语言(例如中日韩等),由于字符众多,不得不使用多个字节来进行编码。随着计算机技术的传播,非拉丁文字符编码技术不断发展,但是仍然存在两个比较大的局限性:不支持多语言:一种语言的编码方案不能用于另外一种语言没有统一标准:例如中文就有GBK、GB2312、GB18030等多种编码标准由于编码方式不统一,开发人员就需要在不同编码之间来回转换,不可避免地会出现很多错

switchcase判断变量,需要具体代码示例在编程中,我们经常需要根据不同的变量值来执行不同的操作。switchcase语句是一种方便的结构,可以根据变量的值来选择不同的代码块进行执行。下面是一个具体的代码示例,展示了如何使用switchcase语句判断变量的不同取值:#includeintmain(){

1.概述作为本文的一部分,让我们从现有Date和CalendarAPI存在的一些问题入手,来探讨新的Java8Date和TimeAPI如何解决这些问题。我们还将搞一搞Java8时间类库中的核心类,比如LocalDate,LocalTime,LocalDateTime,ZonedDateTime,Period,Duration以及它们的api。2.旧的时间API(java8之前)的问题线程安全-Date和Calendar类不是线程安全的,使开发者难以调试这些api的并发问题,需要编写额外的代码来处

一.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

__str__和__repr__有什么异同?字符串的表示形式我们都知道,Python的内置函数repr()能够把对象用字符串的形式表达出来,方便我们辨认。这就是“字符串表示形式”。repr()就是通过__repr__这个特殊方法来得到一个对象的字符串表示形式的。如果没有实现__repr__,当我们在控制台里打印一个向量的实例时,得到的字符串可能会是。>>>classExample:pass>>>print(str(Example()))>>>
