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 相关文章推荐
discuz Passport 通行证 整合笔记
Jun 30 PHP
php中显示数组与对象的实现代码
Apr 18 PHP
关于PHP结束标签的使用细节探讨及联想
Mar 04 PHP
yiic命令时提示“php.exe”不是内部或外部命令的解决方法
Dec 18 PHP
PHP调试函数和日志记录函数分享
Jan 31 PHP
PHP中使用php://input处理相同name值的表单数据
Feb 03 PHP
php实现encode64编码类实例
Mar 24 PHP
PHP里面把16进制的图片数据显示在html的img标签上(实现方法)
May 02 PHP
php实现简单的权限管理的示例代码
Aug 25 PHP
PHP explode()函数用法讲解
Feb 15 PHP
如何在centos8自定义目录安装php7.3
Nov 28 PHP
PHP 构造函数和析构函数原理与用法分析
Apr 21 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
一首老MP3,致敬WAR3经典
2021/03/08 魔兽争霸
php 生成随机验证码图片代码
2010/02/08 PHP
session在php5.3中的变化 session_is_registered() is deprecated in
2013/11/12 PHP
php自定义apk安装包实例
2014/10/20 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
2017/09/22 PHP
基于jQuery的图片左右无缝滚动插件
2012/05/23 Javascript
jquery JSON的解析方式示例介绍
2014/07/27 Javascript
AngularJS入门教程之Hello World!
2014/12/06 Javascript
通过JS判断联网类型和连接状态的实现代码
2015/04/01 Javascript
详解JavaScript中的Unescape()和String() 函数
2015/11/09 Javascript
js中遍历对象的属性和值的方法
2016/07/27 Javascript
小程序开发实战:实现九宫格界面的导航的代码实现
2017/01/19 Javascript
JavaScript实现的仿新浪微博原生态输入字数即时检查功能【兼容IE6】
2017/09/26 Javascript
基于Vue2x的图片预览插件的示例代码
2018/05/14 Javascript
详解vue2.0 资源文件assets和static的区别
2018/11/27 Javascript
在vue使用clipboard.js进行一键复制文本的实现示例
2019/01/15 Javascript
基于mpvue的简单弹窗组件mptoast使用详解
2019/08/02 Javascript
JS实现音量控制拖动
2020/01/15 Javascript
JS实现悬浮球只在一侧滑动并且是横屏状态下
2020/08/19 Javascript
python函数的5种参数详解
2017/02/24 Python
Python文件的读写和异常代码示例
2017/10/31 Python
Python自定义函数实现求两个数最大公约数、最小公倍数示例
2018/05/21 Python
Python 正则表达式匹配字符串中的http链接方法
2018/12/25 Python
Flask模板引擎Jinja2使用实例
2020/04/23 Python
Python内置方法和属性应用:反射和单例(推荐)
2020/06/19 Python
django下创建多个app并设置urls方法
2020/08/02 Python
关于Python3的import问题(pycharm可以运行命令行import错误)
2020/11/18 Python
python 读取yaml文件的两种方法(在unittest中使用)
2020/12/01 Python
CSS教程:CSS3圆角属性
2009/04/02 HTML / CSS
CSS3使用border-radius属性制作圆角
2014/12/22 HTML / CSS
JAVA和C++区别都有哪些
2015/03/30 面试题
作为网站管理者应当如何防范XSS
2014/08/16 面试题
2015年幼儿园国庆节活动总结
2015/07/30 职场文书
2016年大学生社会实践心得体会
2015/10/09 职场文书
python使用opencv对图像添加噪声(高斯/椒盐/泊松/斑点)
2022/04/06 Python
CI Games宣布《堕落之王2》使用虚幻引擎5制作 预计将于2023年正式发售
2022/04/11 其他游戏