php计算给定时间之前的函数用法实例

yipeiwu_com5年前PHP代码库

本文实例讲述了php计算给定时间之前的函数用法。分享给大家供大家参考。具体如下:

这里给定一个时间,计算这个时间在多久前,比如:2天前,1年前

<?php
function prettyDate($date){
  $time = strtotime($date);
  $now = time();
  $ago = $now - $time;
  if($ago < 60){
    $when = round($ago);
    $s = ($when == 1)?"second":"seconds";
    return "$when $s ago";
  }elseif($ago < 3600){
    $when = round($ago / 60);
    $m = ($when == 1)?"minute":"minutes";
    return "$when $m ago";
  }elseif($ago >= 3600 && $ago < 86400){
    $when = round($ago / 60 / 60);
    $h = ($when == 1)?"hour":"hours";
    return "$when $h ago";
  }elseif($ago >= 86400 && $ago < 2629743.83){
    $when = round($ago / 60 / 60 / 24);
    $d = ($when == 1)?"day":"days";
    return "$when $d ago";
  }elseif($ago >= 2629743.83 && $ago < 31556926){
    $when = round($ago / 60 / 60 / 24 / 30.4375);
    $m = ($when == 1)?"month":"months";
    return "$when $m ago";
  }else{
    $when = round($ago / 60 / 60 / 24 / 365);
    $y = ($when == 1)?"year":"years";
    return "$when $y ago";
  }
}
echo prettyDate("2012-07-22 12:23:45")."<br />";
echo prettyDate("2010-11-12 22:25:45")."<br />";
echo prettyDate("2012-01-01 01:00:00")."<br />";
echo prettyDate("2001-05-30 00:00:00")."<br />";

希望本文所述对大家的php程序设计有所帮助。

相关文章

php以fastCGI的方式运行时文件系统权限问题及解决方法

php以fastCGI的方式运行时文件系统权限问题及解决方法

今天准备将一个php demo放在IIS下运行,网站在IIS下的配置是这样的: 应用程序池是集成模式下的.net framework 2.0(2.0或4.0没什么关系,因为php以fas...

php设置静态内容缓存时间的方法

本文实例讲述了php设置静态内容缓存时间的方法。分享给大家供大家参考。具体方法分析如下: 在利用百度工具作一个小测试时提示我们需要设置静态内容缓存时间了,我自己没有服务器权限操作,只能从...

解析PHP可变函数的经典用法

复制代码 代码如下:<?phpfunction map($fun, $list,$params=array()){    $acc=NULL;&nbs...

PHP 获取文件路径(灵活应用__FILE__)

__FILE__ ,是返回文件的完整路径和文件名。如果用在包含文件中,则返回包含文件名。自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径,而在此之前的版本有时会包含一个...

PHP观察者模式实例分析【对比JS观察者模式】

本文实例讲述了PHP观察者模式。分享给大家供大家参考,具体如下: 1.用js实现观察者模式 <!DOCTYPE html> <html> <head&g...