PHP把时间转换成几分钟前、几小时前、几天前的几个函数、类分享
这篇文章主要介绍了php计算时间几分钟前、几小时前、几天前的几个函数、类分享,需要的朋友可以参考下
一、函数实现
实例1:
<?phpheader("Content-type: text/html; charset=utf8");date_default_timezone_set("Asia/Shanghai"); //设置时区function time_tran($the_time) { $now_time = date("Y-m-d H:i:s", time()); //echo $now_time; $now_time = strtotime($now_time); $show_time = strtotime($the_time); $dur = $now_time - $show_time; if ($dur < 0) { return $the_time; } else { if ($dur < 60) { return $dur . '秒前'; } else { if ($dur < 3600) { return floor($dur / 60) . '分钟前'; } else { if ($dur < 86400) { return floor($dur / 3600) . '小时前'; } else { if ($dur < 259200) {//3天内 return floor($dur / 86400) . '天前'; } else { return $the_time; } } } } }}echo time_tran("2014-7-8 19:22:01");?>
实例2:
<?php function time_tranx($the_time){ $now_time = date("Y-m-d H:i:s",time()+8*60*60); $now_time = strtotime($now_time); $show_time = strtotime($the_time); $dur = $now_time - $show_time; if($dur < 0){ return $the_time; }else{ if($dur < 60){ return $dur.'秒前'; }else{ if($dur < 3600){ return floor($dur/60).'分钟前'; }else{ if($dur < 86400){ return floor($dur/3600).'小时前'; }else{ if($dur < 259200){ //3天内 return floor($dur/86400).'天前'; }else{ return $the_time; } } } } } } echo time_tranx("2014-7-8 19:22:01"); ?>
实例3:
<?php function format_date($time){ $t=time()-$time; <span style="white-space:pre"> </span>//echo time(); $f=array( '31536000'=>'年', '2592000'=>'个月', '604800'=>'星期', '86400'=>'天', '3600'=>'小时', '60'=>'分钟', '1'=>'秒' ); foreach ($f as $k=>$v) { if (0 !=$c=floor($t/(int)$k)) { return $c.$v.'前'; } } } echo format_date("1404600000"); ?>
实例4:
<?php function formatTime($date) { $str = ''; $timer = strtotime($date); $diff = $_SERVER['REQUEST_TIME'] - $timer; $day = floor($diff / 86400); $free = $diff % 86400; if($day > 0) { return $day."天前"; }else{ if($free>0){ $hour = floor($free / 3600); $free = $free % 3600; if($hour>0){ return $hour."小时前"; }else{ if($free>0){ $min = floor($free / 60); $free = $free % 60; if($min>0){ return $min."分钟前"; }else{ if($free>0){ return $free."秒前"; }else{ return '刚刚'; } } }else{ return '刚刚'; } } }else{ return '刚刚'; } } } echo formatTime("2014-7-8 19:22:01"); ?>
二、类的实现
<?php /* * author: china_skag * time: 2014-07-08 * 发博时间计算(年,月,日,时,分,秒) * $createtime 可以是当前时间 * $gettime 你要传进来的时间 */ class Mygettime{ function __construct($createtime,$gettime) { $this->createtime = $createtime; $this->gettime = $gettime; } function getSeconds() { return $this->createtime-$this->gettime; } function getMinutes() { return ($this->createtime-$this->gettime)/(60); } function getHours() { return ($this->createtime-$this->gettime)/(60*60); } function getDay() { return ($this->createtime-$this->gettime)/(60*60*24); } function getMonth() { return ($this->createtime-$this->gettime)/(60*60*24*30); } function getYear() { return ($this->createtime-$this->gettime)/(60*60*24*30*12); } function index() { if($this->getYear() > 1) { if($this->getYear() > 2) { return date("Y-m-d",$this->gettime); exit(); } return intval($this->getYear())." 年前"; exit(); } if($this->getMonth() > 1) { return intval($this->getMonth())." 月前"; exit(); } if($this->getDay() > 1) { return intval($this->getDay())." 天前"; exit(); } if($this->getHours() > 1) { return intval($this->getHours())." 小时前"; exit(); } if($this->getMinutes() > 1) { return intval($this->getMinutes())." 分钟前"; exit(); } if($this->getSeconds() > 1) { return intval($this->getSeconds()-1)." 秒前"; exit(); } } } //类的使用实例 /* * * 调用类输出方式 * * $a = new Mygettime(time(),strtotime('-25 month')); * echo iconv('utf-8', 'gb2312', $a->index())?iconv('utf-8', 'gb2312', $a->index()):iconv('utf-8', 'gb2312', '当前'); * */
转载:http://blog.csdn.net/china_skag/article/details/37569505

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Laravel使用其直观的闪存方法简化了处理临时会话数据。这非常适合在您的应用程序中显示简短的消息,警报或通知。 默认情况下,数据仅针对后续请求: $请求 -

PHP客户端URL(curl)扩展是开发人员的强大工具,可以与远程服务器和REST API无缝交互。通过利用Libcurl(备受尊敬的多协议文件传输库),PHP curl促进了有效的执行

Laravel 提供简洁的 HTTP 响应模拟语法,简化了 HTTP 交互测试。这种方法显着减少了代码冗余,同时使您的测试模拟更直观。 基本实现提供了多种响应类型快捷方式: use Illuminate\Support\Facades\Http; Http::fake([ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

您是否想为客户最紧迫的问题提供实时的即时解决方案? 实时聊天使您可以与客户进行实时对话,并立即解决他们的问题。它允许您为您的自定义提供更快的服务

文章讨论了PHP 5.3中引入的PHP中的晚期静态结合(LSB),从而允许静态方法的运行时分辨率调用以获得更灵活的继承。 LSB的实用应用和潜在的触摸
