php中将时间差转换为字符串提示的实现代码


Posted in PHP onAugust 08, 2011

如微博

这看起来更加人性化,好吧,上代码

<?php 
class timeAgo 
{ 
static $timeagoObject; 
private $rustle; 
private $unit; private function __construct() 
{ 
} 
private function __clone(){ } 
public static function getObject() 
{ 
if(! (self::$timeagoObject instanceof self) ) 
self::$timeagoObject = new timeAgo(); 
return self::$timeagoObject; 
} 
private function count_int($unix_C) // main function 
{ 
if(! (isset($unix_C) || is_numeric($unix_C)) ) 
return 'don\'t find parameter'; 
$d = time()-$unix_C ; // $d - unix time difference value 
$d_int =(int)floor($d/60) ; // minimum unit -- minutes unix/60 
$this->unit = 0 ; // is minutes,hour or day? 
if($d_int < 60){ // minutes in one hour 3600 
$this->rustle = $d_int; 
$this->unit = 1; 
} 
else if($d_int < 720){ //hour in one day 3600*12 
$this->rustle = floor($d_int/60); 
$this->unit = 2 ; 
} 
else if($d_int < 7200){ //day in ten days 3600*12*10 
$this->rustle = floor($d_int/720); 
$this->unit = 3 ; 
} 
else{ 
$this->rustle = $d ; 
$this->unit = 4 ; 
} 
} 
public function piece_str($C) 
{ 
$this->count_int($C); 
$u = ''; 
switch( $this->unit ) 
{ 
case 1: 
$u = 'minute'; 
break; 
case 2: 
$u = 'hour'; 
break; 
case 3: 
$u = 'day'; 
break; 
case 4: 
$u = ''; 
break; 
case 0: 
return 'sorry , get time is fail'; 
} 
if($this->unit < 4) 
{ 
if($this->rustle > 1) 
return (string)$this->rustle.$u.'s ago'; 
else if($this->rustle == 1) 
return (string)$this->rustle.$u.'ago'; 
else 
return 'Just now'; 
} 
} 
/* example: $ago = timeAgo::getObject(); 
* echo $ago->piece_str($unix); 
* // 2 days ago 
*/ 
} 
?>
PHP 相关文章推荐
简单的页面缓冲技术
Oct 09 PHP
PHP下通过file_get_contents的代理使用方法
Feb 16 PHP
PHP中获取内网用户MAC地址(WINDOWS/linux)的实现代码
Aug 11 PHP
php页面函数设置超时限制的方法
Dec 01 PHP
php判断文件上传类型及过滤不安全数据的方法
Dec 17 PHP
PHP创建文件,并向文件中写入数据,覆盖,追加的实现代码
Mar 25 PHP
Centos 6.5系统下编译安装PHP 7.0.13的方法
Dec 19 PHP
浅谈PHP面向对象之访问者模式+组合模式
May 22 PHP
PHP长网址与短网址的实现方法
Oct 13 PHP
PHP常见的几种攻击方式实例小结
Apr 29 PHP
tp5.0框架隐藏index.php入口文件及模块和控制器的方法分析
Feb 11 PHP
PHP var关键字相关原理及使用实例解析
Jul 11 PHP
兼容firefox,chrome的网页灰度效果
Aug 08 #PHP
用php解析html的实现代码
Aug 08 #PHP
php中设置多级目录session的问题
Aug 08 #PHP
ThinkPHP 防止表单重复提交的方法
Aug 08 #PHP
ThinkPHP与PHPExcel冲突解决方法
Aug 08 #PHP
让Nginx支持ThinkPHP的URL重写和PATHINFO的方法分享
Aug 08 #PHP
php Smarty初体验二 获取配置信息
Aug 08 #PHP
You might like
生成静态页面的php函数,php爱好者站推荐
2007/03/19 PHP
jQuery+php简单实现全选删除的方法
2016/11/28 PHP
js程序中美元符号$是什么
2008/06/05 Javascript
Javascript 学习书 推荐
2009/06/13 Javascript
用js实现计算加载页面所用的时间
2010/04/02 Javascript
jQuery动态添加 input type=file的实现代码
2012/06/14 Javascript
在javascript中关于节点内容加强
2013/04/11 Javascript
node.js中使用node-schedule实现定时任务实例
2014/06/03 Javascript
DOM节点的替换或修改函数replaceChild()用法实例
2015/01/12 Javascript
js如何实现点击标签文字,文字在文本框出现
2015/08/05 Javascript
Node.js重新刷新session过期时间的方法
2016/02/04 Javascript
复杂的javascript窗口分帧解析
2016/02/19 Javascript
jQuery EasyUI API 中文帮助文档和扩展实例
2016/08/01 Javascript
纯JavaScript实现实时反馈系统时间
2017/10/26 Javascript
详解如何在React组件“外”使用父组件的Props
2018/01/12 Javascript
three.js 入门案例详解
2018/01/23 Javascript
jQuery实现的两种简单弹窗效果示例
2018/04/18 jQuery
react-intl实现React国际化多语言的方法
2020/09/27 Javascript
Python进阶学习之特殊方法实例详析
2017/12/01 Python
Python random模块用法解析及简单示例
2017/12/18 Python
对numpy中的数组条件筛选功能详解
2018/07/02 Python
python实现连续图文识别
2018/12/18 Python
基于python3的socket聊天编程
2020/02/17 Python
PyCharm最新激活码PyCharm2020.2.3有效
2020/11/18 Python
Agoda香港:全球特价酒店预订
2017/05/07 全球购物
有机婴儿毛毯和衣服:Monica + Andy
2020/03/01 全球购物
Python面试题:Python里面如何生成随机数
2015/03/12 面试题
电大毕业自我鉴定
2014/02/03 职场文书
班级活动策划书
2014/02/06 职场文书
公司司机岗位职责
2014/02/07 职场文书
《蒲公英》教学反思
2014/02/28 职场文书
超市仓管员岗位职责范本
2014/09/18 职场文书
应聘教师求职信范文
2015/03/20 职场文书
2016年感恩教师节校园广播稿
2015/12/18 职场文书
关于感恩的作文
2019/08/26 职场文书
Log4j.properties配置及其使用
2021/08/02 Java/Android