PHP-时间函数

1、时间格式化函数date(format,timestamp)

format 时间格式
timestamp 时间戳

下面列出了一些常用于日期的字符:

  • d - 表示月里的某天(01-31)
  • m - 表示月(01-12)
  • Y - 表示年(四位数)
  • 1 - 表示周里的某天

其他字符,比如 "/", "." 或 "-" 也可被插入字符中,以增加其他格式。

网站版本自动更新 © 2010-<?php echo date("Y")?>

2、时间戳与时间字符串之间的相互转化

  时间戳函数 strtotime()
  当前时间戳 time() 获得今天零点的时间戳 要获得零点的unix时间戳,可以使用

  $todaytime=strtotime(“today”),

  然后再使用

  date("Y-m-d H:i",$todaytime)转换为日期。

  日期要转成时间戳的话就要用到strtotime()

  $oldtime = '2010-11-10 22:19:21';

$catime = strtotime($oldtime);

3.php中时间戳转换为日期,并按照时间显示不同的内容,如刚刚,分钟前,小时前,今天,昨天等

/*

时间转换函数

*/

function transTime($ustime) {

$ytime = date("Y-m-d H:i",$ustime);

$rtime = date("m月d日 H:i",$ustime);

$htime = date("H:i",$ustime);

$time = time() - $ustime;

$todaytime = strtotime("today");

$time1 = time() - $todaytime;

if($time < 60){

  $str = '刚刚';

}else if($time < 60 * 60){

  $min = floor($time/60);

  $str = $min.'分钟前';

}else if($time < $time1){

  $str = '今天'.$htime;

}else{             

  $str = $rtime;

}

return $str;

}

其它的参考

使用date将当时间戳与指定时间戳转换成系统时间

(1)打印明天此时的时间戳

strtotime(”+1 day“)

当前时间:

echo date(”Y-m-d H:i:s”,time())

指定时间:

echo date(”Y-m-d H:i:s”,strtotime(”+1 day”))

(2)打印昨天此时的

时间戳

strtotime(”-1 day“)

当前时间:

echo date(”Y-m-d H:i:s”,time()) 

指定时间:

echo date(”Y-m-d H:i:s”,strtotime(”-1 day”))

(3)打印下个星期此时的时间戳

strtotime(”+1 week“)

当前时间:

echo date(”Y-m-d H:i:s”,time())

指定时间:

echo date(”Y-m-d H:i:s”,strtotime(”+1 week”))

(4)打印上个星期此时的时间戳

strtotime(”-1 week“)

当前时间:

echo date(”Y-m-d H:i:s”,time())

指定时间:

echo date(”Y-m-d H:i:s”,strtotime(”-1 week”))

(5)打印指定下星期几的PHP时间戳

strtotime(”next Thursday“)

当前时间:

echo date(”Y-m-d H:i:s”,time())

指定时间:

echo date(”Y-m-d H:i:s”,strtotime(”next Thursday”))

(6)打印指定上星期几的时间戳

strtotime(”last Thursday“)

当前时间:

echo date(”Y-m-d H:i:s”,time())

指定时间:

echo date(”Y-m-d H:i:s”,strtotime(”last Thursday”))

(7)打印指定上月的时间戳

strtotime(”-1 Months“)

当前时间:

echo date(”Y-m-d H:i:s”,time())

指定时间:

echo date(”Y-m-d H:i:s”,strtotime(”-1 Months”))

附实例:

<?php

echo(strtotime("now"));
echo(strtotime("3 October 2017"));
echo(strtotime("+5 hours"));
echo(strtotime("+1 week"));
echo(strtotime("+1 week 3 days 7 hours 5 seconds"));
echo(strtotime("next Monday"));
echo(strtotime("last Sunday"));
echo   date("Y-m-d"strtotime("+1 months",strtotime("2018-5-1")));//下月一号
?>
上一篇:redis持久化详述


下一篇:Effective Java 第三版——28. 列表优于数组