PHP版实现友好的时间显示方式(例如:2小时前)
完整php类,通常我会配合smary使用,快捷使用 (plugins/function.rdate.php),更多php技术开发就去php教程网,http://php.662p.com
<?PHP
/*
* Data time functions.
// * 模块
*/
defined('TSKY') || die('Permission Denied!'); function fmtMonth($month){
return date('F, Y',day2time($month.'01'));
} //
function fmt_month($ts) {
return strftime("%b,%Y",$ts);
} // 03:02
function shartTime($ts) {
return strftime("%H:%M",$ts);
}
// 03:02:01
function longTime($ts) {
return strftime("%T",$ts);
}
//4月18日
function shortDate($ts) {
return date("n月d日",$ts);
}
//2006年4月18日
function longDate($ts) {
return date("Y年n月d日",$ts);
} function dateTime($ts) {
return date("Y年n月d日 H:i:s",$ts);
}
function fullDateTime($ts) {
return date("Y年n月d日 ",$ts).week($ts);
}
function week($ts) {
global $lang;
return $lang['weekDay'][date('w',$ts)];
} function relatively_date($date) {
if (!preg_match('/^\d+$/', $date)) $date = strtotime(trim($date));
$sec = time() - $date;
switch(true){
case $sec < 3600:
return round($sec/60). ' 分钟前';
case $sec < 86400:
return round($sec/3600). ' 小时前';
case $sec < (86400 * 7):
return round($sec/86400). ' 天前';//days ago
case $sec < (86400 * 7 * 4):
return round($sec/(86400*7)). ' 周前'; //weeks ago
default:
return longDate($date);
}
} function nextMonth($month/*200512->200601*/){
return date('Ym',strtotime('+1 month',strtotime($month.'01')));
}
function prevMonth($month/*200512->200511*/){
return date('Ym',strtotime('-1 month',strtotime($month.'01')));
}
function prevDay($day/*20050826*/){
$day = substr($day,0,8);
return date('Ymd',strtotime('-1 day',strtotime($day)));
} function nextDay($day/*20050826*/){
$day = substr($day,0,8);
return date('Ymd',strtotime('+1 day',strtotime($day)));
}
function nextExistsDay($day/*20050109*/){
$day = nextDay($day);
while(!hasTopic($day) && $day < TODAY){
$day = nextDay($day);
}
return hasTopic($day) ? $day : false;
}
function prevExistsDay($day/*20050109*/){
global $cfg;
$day = prevDay($day);
while(!hasTopic($day) && (int)$day > $cfg->origDate){
$day = prevDay($day);
}
return hasTopic($day) ? $day : false;
} function prev_day($day){$day = substr($day,0,8);return date('Ymd',strtotime('-1 day',strtotime($day)));}
function long_date($ts){return date("Y年n月d日",$ts);}
function day2time($day){return @strtotime($day);} /*
echo "<pre>";
echo strftime("a%a\n"); // a 星期二
echo strftime("A%A\n"); // A 星期二
echo strftime("b%b\n"); // b 四月
echo strftime("B%B\n"); // B 四月
echo strftime("c%c\n"); // c 2006-4-18 3:48:11
echo strftime("C%C\n"); // C
echo strftime("d%d\n"); // d 18
echo strftime("D%D\n"); // D
echo strftime("e%e\n"); // e
echo strftime("g%g\n"); // g
echo strftime("G%G\n"); // G
echo strftime("h%h\n"); // h
echo strftime("H%H\n"); // H 03
echo strftime("I%I\n"); // I 03
echo strftime("j%j\n"); // j 108
echo strftime("m%m\n"); // m 04
echo strftime("M%M\n"); // M 48
echo strftime("n%n\n"); // n
echo strftime("p%p\n"); // p 上午
echo strftime("r%r\n"); // r
echo strftime("R%R\n"); // R
echo strftime("S%S\n"); // S 11
echo strftime("t%t\n"); // t
echo strftime("T%T\n"); // T
echo strftime("u%u\n"); // u
echo strftime("U%U\n"); // U 16
echo strftime("V%V\n"); // V
echo strftime("W%W\n"); // W 16
echo strftime("w%w\n"); // w 2
echo strftime("x%x\n"); // x 2006-4-18
echo strftime("X%X\n"); // X 3:48:11
echo strftime("y%y\n"); // y 06
echo strftime("Y%Y\n"); // Y 2006
echo strftime("Z%Z\n"); // Z 中国标准时间
echo strftime("%%%\n"); // %
*/
详细说明:http://php.662p.com/thread-571-1-1.html
PHP版实现友好的时间显示方式(例如:2小时前)的更多相关文章
- PHP比较全的友好的时间显示,比如‘刚刚’,'几秒前'等
分享一个php友好的比较完成的时间格式化函数,包括‘刚刚’,'几秒之前',‘几分钟前’,'几小时前',几天前,几周前,几个月前等.调用方式很简单,是从ThinkSNS 里面拿出来的. /** * 友好 ...
- php格式化时间戳显示友好的时间
在项目中时间一律显示为2014-10-20 10:22显得很呆板.在微博.QQ空间等网站通常会显示为几秒前,几分钟前,几小时前等容易阅读的时间,我们称之为友好的时间格式.那么用php怎么实现呢? 大体 ...
- php友好格式化时间
php格式化时间显示 function toTime($time) {//$time必须为时间戳 $rtime = date("Y-m-d H:i",$time); $htime ...
- Win10《芒果TV》商店版跻身Windows商店《热门免费应用》前12强
2017立春上班的第一天,让人惊喜的好日子,春节过后,Win10<芒果TV>商店版跻身Windows商店<热门免费应用>前12强,露出尖尖头,这个来自广大用户和合作伙伴们一直以 ...
- 使用C#把发表的时间改为几年前,几个月,几天前,几小时前,几分钟前,或几秒前
我们在评论中往往会看到多少天前,多少小时前. 实现原理:现在时间-过去时间 得到的时间差来做比较 下面我定义了一个Helper类,大家直接引用即可,参数就是时间差,注意时间差类型是TimeSpan类型 ...
- PHP date函数时间相差8个小时解决办法
php中date时间相差8个小时的解决办法 作者: PHP中文网|标签:|2016-7-25 08:46 在Windows上,在默认的PHP配置下,date函数返回的时间值和当地时间总是相差8小时,即 ...
- Log4j 输出的日志中时间比系统时间少了8小时的解决方法,log4j日志文件重复输出
1. 第一个问题:时间少了8小时 Log4j 输出的日志中,时间比系统时间少了8小时,但是 eclipse 控制台输出的日志的时间却是对的. log4j配置如下: #all logger output ...
- Oracle中获取当前时间半小时前的时间
最近项目中有个要根据半个小时前的数据情况判断某一栏位的值,但是一直没想到怎样获取当前时间的半小时前的时间,今天突然想到可以通过sysdate做差来获取,比如sysdate-1这样的,刚开始没有对结果进 ...
- 用PHP获取系统时间时,时间比当前时间少8个小时
自PHP5.0开始,用PHP获取系统时间时,时间比当前时间少8个小时.原因是PHP.ini中没有设置timezone时,PHP是使用的UTC时间,所以在中国时间要少8小时. 解决办法: 1.在PHP. ...
随机推荐
- mongoDB索引使用
for(var i=0;i<10000;i++){ db.user.insert({name:"user"+i,age:i}) }添加这么多数据 db.user.find({ ...
- 第5章 Posix 消息队列
5.1 概述 消息队列可以认为是一个链表.有写权限的线程可往消息队列中放置消息,有读权限的线程可以从消息队列中取走消息. 消息队列和管道/FIFO的区别: (1)消息队列往一个队列中写消息前,并不需要 ...
- 移动应用(手机应用)开发IM聊天程序解决方案
这个解决方法已经定制下来很久了,上一段时间比较忙,没有时间整这些东西.最近稍微好些,不怎么加班.所以抽空总结下,同时也分享给大家,也算是给大家一个借鉴吧!或许这并不是最好的解决方案,但只要能满足当前需 ...
- EDE,DEDE网站搬家,DEDECMS搬家教程,一看就会
无聊做个小教程:DEDE搬家,本人提供搬家 先来说下DEDE 大家会安装吧,不多说,看图 一.进入织梦DedeCms的后台备份数据库 步骤:系统 –> 数据库备份/还原 -> 全选有所织梦 ...
- 如何获取SQL Server 2008数据库数据文件的位置
在SQL Server中,要获取数据库数据文件的物理位置,有三种方法: sp_helpdb bright name filename f ...
- [kuangbin带你飞]专题七 线段树
ID Origin Title 228 / 440 Problem A HDU 1166 敌兵布阵 207 / 438 Problem B HDU 1754 I Hate It ...
- C++primer 练习10.16
// 10.3.2.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<iostream> #include< ...
- nyoj 82 迷宫寻宝(一)
点击打开链接 迷宫寻宝(一) 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 一个叫ACM的寻宝者找到了一个藏宝图,它根据藏宝图找到了一个迷宫,这是一个很特别的迷宫,迷宫 ...
- dbf导入Oracle
如果想通过拷贝数据文件来恢复数据库的话:1.要确定源数据库和目标数据库的安装目录等完全一致,os一致2.把源数据库的控制文件,spfile,密码文件拷贝到目标数据库的相同目录下3.通过源数据库的con ...
- 监控RAC中的临时表空间
it is from metalink:Note:465840.1 1>Monitor the temp space allocation to make sure each instance ...