很多站长朋友们都不太清楚php实现几天前,今天小编就来给大家整理php实现几天前,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 用PHP怎么取得7天前的日期 2、 php得到当前时间的前多少天时间 3、 PHP显示前天,昨天,今天和几天前 4、 php显示刚刚,几分钟前,几小时前,几天前的函数 用PHP怎么取得7天前的日期在PHP里面,使用time函数获得当前的时间(年月日时分秒都有,实际上是从1970 年 1 月 1 日 0到当前时间的秒数。
那么,要获得7天前的时刻只需要当前时刻减去7天*24小时/天*3600秒/小时即可,也就是time()-7-24*3600。
例子代码:
<?php
$t=time();
echo date('Y-m-d H:i:s',$t)."\n";
$t-=7*24*3600;
echo date('Y-m-d H:i:s',$t)."\n";
?>
上面的代码显示:
2015-12-17 13:29:59
2015-12-10 13:29:59
如果你只需要到天,不需要时分秒,那么date函数的第一个参数改为'Y-m-d'即可。
php得到当前时间的前多少天时间使用PHP的strtotime函数可以获取指定时间或日期的时间戳,然后再使用date函数格式化时间戳就可以了。
举例如下:
date_default_timezone_set('PRC'); //设置时区
//打印出3天前的时间
echo(date('Y-m-d H:i:s', strtotime("-3 day")));
//打印出2个星期前的时间
echo(date('Y-m-d H:i:s', strtotime("-2 week")));
//打印出5个小时后的时间
echo(date('Y-m-d H:i:s', strtotime("+5 hours")));
//打印出1个星期后的时间
echo(date('Y-m-d H:i:s', strtotime("+1 week")));
输出结果:
PHP显示前天,昨天,今天和几天前//人性化显示时间
//$sTime int 时间戳
function formatTime($sTime, $formt = 'Y-m-d') {
if (!$sTime) {
return '';
}
//sTime=源时间,cTime=当前时间,dTime=时间差
$cTime = time();
$dTime = $cTime - $sTime;
$dDay = intval(date('z',$cTime)) - intval(date('z',$sTime));
$dYear = intval(date('Y',$cTime)) - intval(date('Y',$sTime));
//n秒前,n分钟前,n小时前,日期
if ($dTime < 60 ) {
if ($dTime < 10) {
return '刚刚';
} else {
return intval(floor($dTime / 10) * 10).'秒前';
}
} elseif ($dTime < 3600 ) {
return intval($dTime/60).'分钟前';
} elseif( $dTime >= 3600 $dDay == 0 ){
return intval($dTime/3600).'小时前';
} elseif( $dDay > 0 $dDay<=7 ){
return intval($dDay).'天前';
} elseif( $dDay > 7 $dDay <= 30 ){
return intval($dDay/7).'周前';
} elseif( $dDay > 30 ){
return intval($dDay/30).'个月前';
} elseif ($dYear==0) {
return date('m月d日', $sTime);
} else {
return date($formt, $sTime);
}
}
//以下为相关时间戳获取方法
//今日开始和结束的时间戳
$start = mktime(0, 0, 0, date('m'), date('d'), date('Y'));
$end = mktime(23, 59, 59, date('m'), date('d'), date('Y'));
//昨日开始和结束的时间戳
$start = mktime(0, 0, 0, date('m'), date('d') - 1, date('Y'));
$end = mktime(23, 59, 59, date('m'), date('d') - 1, date('Y'));
//本周开始和结束的时间戳
$start = strtotime(date('Y-m-d', strtotime("this week Monday", time())));
$end = strtotime(date('Y-m-d', strtotime("this week Sunday", time()))) + 24 * 3600 - 1;
//上周开始和结束的时间戳
$start = strtotime(date('Y-m-d', strtotime("last week Monday", time())));
$end = strtotime(date('Y-m-d', strtotime("last week Sunday", time()))) + 24 * 3600 - 1;
//本月开始和结束的时间戳
$start = mktime(0, 0, 0, date('m'), 1, date('Y'));
$end = mktime(23, 59, 59, date('m'), date('t'), date('Y'));
//上个月开始和结束的时间戳
$start = mktime(0, 0, 0, date('m') - 1, 1, date('Y'));
$end = mktime(23, 59, 59, date('m') - 1, date('t', $start), date('Y'));
//今年开始和结束的时间戳
$start = mktime(0, 0, 0, 1, 1, date('Y'));
$end = mktime(23, 59, 59, 12, 31, date('Y'));
//去年开始和结束的时间戳
$start = mktime(0, 0, 0, 1, 1, date('Y') - 1);
$end = mktime(23, 59, 59, 12, 31, date('Y') - 1);
//获取两个时间戳相差几天
function day_to_day($start,$end){
$r = $end-$start;
if($r<0){
$day = -($r/86400);
$day = ceil($day);
}else{
$day = ceil($r/86400);
}
return $day;
}
都是我收集的,希望对你有帮助。
php显示刚刚,几分钟前,几小时前,几天前的函数你好这个问题其实根据秒数写函数
当前时间戳 time()
几分钟前 time()-n*60
几小时前 time()-n*3600
几天前 time()-n*3600*24
然后用date()函数格式化得到的时间戳 return结果
因为用手机不好敲字 把他整合到一个函数里即可 希望能够帮助到你。望采纳!
关于php实现几天前的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php实现几天前 php 第几周的详细内容...