php实现用已经过去多长时间的方式显示时间

   本文实例讲述了php用已经过去多长时间的方式显示时间的方法。分享给大家供大家参考。具体如下:

  这里以一种可读性比较好的方式显示已经过去多长时间,比如:距离现在10秒,距离现在1天等等。

  ?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

function time_is_older_than($t, $check_time){
$t = strtolower($t);
$time_type = substr(preg_replace('/[^a-z]/', '', $t), 0, 1);
$val = intval(preg_replace('/[^0-9]/', '', $t));
$ts = 0;
// (s)econds, (m)inutes, (d)ays, (y)ears
if ($time_type == 's'){ $ts = $val; }
else if ($time_type == 'm'){ $ts = $val * 60; }
else if ($time_type == 'h'){ $ts = $val * 60 * 60; }
else if ($time_type == 'd'){ $ts = $val * 60 * 60 * 24; }
else if ($time_type == 'y'){ $ts = $val * 60 * 60 * 24 * 365; }
else { die('Unknown time format given!'); }
if ($check_time < (time()-$ts)){ return true; }
return false;
}
 
//使用范例:
// timestamp to test:
// (could be from an database or something else)
$time = 1146722922;
// long if check:
if (time_is_older_than('30m', $time)){
print 'The given timestamp: ' . date('l dS of F Y h:i:s A',$time);
print " - is older than 30 minutes<br/>n";
}
else {
print 'The given timestamp: ' . date('l dS of F Y h:i:s A',$time);
print " - is NOT older than 30 minutes<br/>n";
}
// short checks:
if (time_is_older_than('10s', $time)){ print "Is older than 10 seconds<br/>n"; }
if (time_is_older_than('200m', $time)){ print "Is older than 200 minutes<br/>n"; }
if (time_is_older_than('2h', $time)){ print "Is older than 2 hours<br/>n"; }
if (time_is_older_than('4d', $time)){ print "Is older than 4 days<br/>n"; }
if (time_is_older_than('1y', $time)){ print "Is older than one year<br/>n"; }

  希望本文所述对大家的php程序设计有所帮助。

时间: 2024-09-27 17:27:27

php实现用已经过去多长时间的方式显示时间的相关文章

java采用中文方式显示时间的方法_java

本文实例讲述了java采用中文方式显示时间的方法.分享给大家供大家参考.具体如下: 其中t为秒,比如有时候需要计算两个任务相差多久,或者该任务何时结束或者某个任务间隔多久重新启动等适用于本方法.如果是微秒,自己先/1000 private static String chinese_period(int t){ int y, n, d, h, m, s; String time; if(t<=0) return "立即"; s = t % 60; t /= 60; m = t %

修改Win8通知对话框显示时间

Windows 8在开始界面上使用了方块形磁贴应用图标,并且对于消息.邮件.资讯等能够实现即时消息提醒,比如当有邮件收到时,会即刻在屏幕的右上角出现提示信息,或者是微博消息.QQ消息,甚至是接入其他外部设备时,但大家也会发现,这个提醒的消息停留的时间非常短暂,也许还没注意到就跳过了,有些即时的消息也许就会错过,那么我们如何让这个"通知对话框"显示的久一点呢? QQ消息提醒 邮件提醒 外部设备提醒 不想错过即时提醒的消息?如果显示的时间稍微长点儿不就可以了吗?没错,不要着急,只需要几步我

设置Win8界面通知对话框显示时间

微软Win8提供了非常方便的"通知"提示功能,我们可以在屏幕右上方看到当前的应用更新提示或其他系统通知信息.有些朋友觉得Win8屏幕右上角的通知对话框显示时间较短,可能会而错过一些信息.我们可以通过设置修改Win8通知对话框的显示时间吗?方法其实很简单. 图示:Win8界面右上角的"通知"对话框 首先我们打开Windows 8的控制面板,选择"轻松使用". 图示:在Windows 8控制面板中选择"轻松使用" 在Win8&qu

Windows 7时间栏如何显示星期几

  Windows7默认的"日期栏"只显示时间和年月日,而没有星期的信息.不过,要让Windows7的任务栏时间区显示星期几也不是很困难的事情,用不着小工具或者第三方软件. 鼠标单击任务栏的时间区域,点击"更改日期和时间设置"; 再点击"更改日期和时间"; 然后点击"更改日历设置"; 在自定义格式窗口中,切换到"日期"选项卡,在日期格式栏作如下修改:短日期(S )下拉框中输入"dddd ddMMM

调整RT通知的显示时间

我们在Windows UI界面下使用一些应用时,经常会提示你是否开启内容推送功能.开启后,系统会在接收到那些应用的相关信息时在屏幕右上角弹出你所接收到的信息内容,以便我们可以在第一时间回复重要的信息. 但这个提示信息停留的时间非常短暂,经常在我们还没来得及查看内容就消失了,很容易让我们错过那些重要的信息.如果可以修改提示信息的显示时间就好了,其实我们可以在控制面板中进行修改设置.那些不希望提示信息显示时间过长又不想关闭推送的朋友也可以通过这个方法来进行相应的调整. 划出侧边栏 进入控制面板 首先

java-如何把两时间之间的节假日时间跟去除掉

问题描述 如何把两时间之间的节假日时间跟去除掉 eg:2015-9-30到2015-10-10 就是想把中间的国庆日去掉不算,周末也不算然后算之间相差的天数 解决方案 http://download.csdn.net/download/xixi808/4145619 解决方案二: http://blog.sina.com.cn/s/blog_716956380101a9nn.html 解决方案三: http://blog.csdn.net/xxftuu/article/details/44229

求解.net datagridview[i,e.rowindex].tooltiptext 延长显示时间。

问题描述 不懂如何设置tooltiptext延长显示时间,求大神帮忙. 解决方案 解决方案二:privatevoidtimer1_Tick(objectsender,EventArgse){toolTip1.Active=false;toolTip1.Active=true;}把timer控件的时间设置长一点试试.解决方案三:privatevoidmyRadGridView1_ToolTipTextNeeded(objectsender,Telerik.WinControls.ToolTipTe

求助,楼主在做一个条码录入DB,条码长度500多码,扫入textbox全部显示完成需要5s,有无减少条码显示时间的方法?

问题描述 扫入textbox显示太慢了,不过条码长度也很长,500多码,有无减少显示时间的方法?使用其它控件?小女子跪谢 解决方案 解决方案二:一维码还是二维码?扫条码不是扫描枪的事情么?解决方案三:性能优化的第一步是什么?测量,先测一下你的系统里面没部分所花的时间再说解决方案四:你应该测试一下,到底慢在显式,还是扫描?你可以扫完再一次性地把数据传给TextBox,或者是扫描过程中暂停时间超过500毫秒时才把数据传给TextBox.解决方案五:引用3楼sp1234的回复: 你应该测试一下,到底慢

webform的label控件的tooltip 显示时间

问题描述 我想让显示时间长一点,该怎么实现呢? 解决方案 解决方案二:什么叫显示时间长一点,就是鼠标移开也不会马上消失吗?可以选用插件来做,显示提示之后用setTimeOut来延时消失解决方案三:鼠标不移开不消失,移开了就消失了