php返回两个时间点的差距,以非常人性化的显示出来
2016-04-04 22:11
639 查看
1.自定义函数(超智能)
//返回两个时间点的差距,以非常人性化的显示出来
//函数有两个参数。第一个参数指的是开始时间,默认值是1;第二个参数是现在(或结束)时间,默认是time()
2.在php文件中的使用如下:
在tp框架的模板里使用如下:
//返回两个时间点的差距,以非常人性化的显示出来
//函数有两个参数。第一个参数指的是开始时间,默认值是1;第二个参数是现在(或结束)时间,默认是time()
<span style="font-size:18px;">function timespan($seconds = 1, $time = '') { if ( ! is_numeric($seconds)) { $seconds = 1; } if ( ! is_numeric($time)) { $time = time(); } if ($time <= $seconds) { $seconds = 1; } else { $seconds = $time - $seconds; } $str = ''; $years = floor($seconds / 31536000); if ($years > 0) { $str .= $years.' 年, '; } $seconds -= $years * 31536000; $months = floor($seconds / 2628000); if ($years > 0 OR $months > 0) { if ($months > 0) { $str .= $months.' 月, '; } $seconds -= $months * 2628000; } $weeks = floor($seconds / 604800); if ($years > 0 OR $months > 0 OR $weeks > 0) { if ($weeks > 0) { $str .= $weeks.' 周, '; } $seconds -= $weeks * 604800; } $days = floor($seconds / 86400); if ($months > 0 OR $weeks > 0 OR $days > 0) { if ($days > 0) { $str .= $days.' 天, '; } $seconds -= $days * 86400; } $hours = floor($seconds / 3600); if ($days > 0 OR $hours > 0) { if ($hours > 0) { $str .= $hours.' 小时, '; } $seconds -= $hours * 3600; } $minutes = floor($seconds / 60); if ($days > 0 OR $hours > 0 OR $minutes > 0) { if ($minutes > 0) { $str .= $minutes.' 分钟, '; } $seconds -= $minutes * 60; } if ($str == '') { $str .= $seconds.' 秒, '; } return substr(trim($str), 0, -1); }</span>
2.在php文件中的使用如下:
在tp框架的模板里使用如下:
相关文章推荐
- PHP设计模式 外观设计模式
- php实现冒泡排序,选择排序,插入排序和快速排序
- PHP内核的存储机制(分离/改变)
- 一、ThinkPHP的介绍
- 一、ThinkPHP的介绍
- 一、ThinkPHP的介绍
- php原生的增删该查
- FTP两种工作模式介绍
- 学习配置vsftp 进行ftp文件的传输
- php打印蛇形回路二维矩阵问题
- php统计字符串最大回文数问题
- 搭建自己的PHP框架心得(二)
- PHP读取大文件的多种方法介绍
- PHP如何将XML转成数组
- php 正则只保留 汉字 字母 数字
- php 发送与接收流文件
- yii2入口文件
- ubuntu下没有phpize的解决方法
- PHP根据URL提取根域名
- php自动加载方式集合