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 相关文章推荐
php下判断数组中是否存在相同的值array_unique
Mar 25 PHP
PHP下用rmdir实现删除目录的三种方法小结
Apr 20 PHP
一些需要禁用的PHP危险函数(disable_functions)
Feb 23 PHP
php下拉选项的批量操作的实现代码
Oct 14 PHP
PHP curl实现抓取302跳转后页面的示例
Jul 04 PHP
PHP实现Soap通讯的方法
Nov 03 PHP
2014最热门的24个php类库汇总
Dec 18 PHP
PHP数组游标实现对数组的各种操作详解
Jan 26 PHP
PHP发送AT指令实例代码
May 26 PHP
PHP打印输出函数汇总
Aug 28 PHP
php如何利用pecl安装mongodb扩展详解
Jan 09 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
Oct 03 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
win7+apache+php+mysql环境配置操作详解
2013/06/10 PHP
destoon实现调用自增数字从1开始的方法
2014/08/21 PHP
[原创]ThinkPHP让../Public在模板不解析(直接输出)的方法
2015/10/09 PHP
TP3.2.3框架使用CKeditor编辑器在页面中上传图片的方法分析
2019/12/31 PHP
editable.js 基于jquery的表格的编辑插件
2011/10/24 Javascript
JavaScript必看小技巧(必看)
2016/06/07 Javascript
NodeJS和BootStrap分页效果的实现代码
2016/11/07 NodeJs
JS实现重新加载当前页面或者父页面的几种方法
2016/11/30 Javascript
微信小程序 聊天室简单实现
2017/04/19 Javascript
Vue监听一个数组id是否与另一个数组id相同的方法
2018/09/26 Javascript
vue.js仿hover效果的实现方法示例
2019/01/28 Javascript
vue自定义js图片碎片轮播图切换效果的实现代码
2019/04/28 Javascript
Angular封装表单控件及思想总结
2019/12/11 Javascript
Selenium执行Javascript脚本参数及返回值过程详解
2020/04/01 Javascript
vue+element获取el-table某行的下标,根据下标操作数组对象方式
2020/08/07 Javascript
js将日期格式转换为YYYY-MM-DD HH:MM:SS
2020/09/18 Javascript
微信小程序视频弹幕发送功能的实现
2020/12/28 Javascript
Python中模块pymysql查询结果后如何获取字段列表
2017/06/05 Python
Python下简易的单例模式详解
2019/04/08 Python
Python爬虫 批量爬取下载抖音视频代码实例
2019/08/16 Python
Python使用pymysql模块操作mysql增删改查实例分析
2019/12/19 Python
matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例
2020/04/22 Python
Python无损压缩图片的示例代码
2020/08/06 Python
Python 实现PS滤镜中的径向模糊特效
2020/12/03 Python
CSS3色彩模式有哪些?CSS3 HSL色彩模式的定义
2016/04/26 HTML / CSS
携程旅行网:中国领先的在线旅行服务公司
2017/02/17 全球购物
美国高端医师级美容产品电商:BeautifiedYou.com
2017/04/17 全球购物
营销与策划个人求职信
2013/09/22 职场文书
服装行业创业计划书范文
2014/02/05 职场文书
商场促销活动方案
2014/02/08 职场文书
应聘护理专业毕业自荐书范文
2014/02/12 职场文书
奶茶店的创业计划书该怎么写?
2019/07/15 职场文书
导游词之峨眉山
2019/12/16 职场文书
用python自动生成日历
2021/04/24 Python
MySQL安装后默认自带数据库的作用详解
2021/04/27 MySQL
win10壁纸在哪个文件夹 win10桌面背景图片文件位置分享
2022/08/05 数码科技