开发者社区> 科技小能手> 正文

php日期时间计算,转载

简介:
+关注继续查看
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
//php获取今天日期
date("Y-m-d");    
//php获取昨天日期    
date("Y-m-d",strtotime("-1 day"))    
//php获取明天日期    
date("Y-m-d",strtotime("+1 day"))    
//php获取一周后日期    
date("Y-m-d",strtotime("+1 week"))    
//php获取一周零两天四小时两秒后时间    
date("Y-m-d G:H:s",strtotime("+1 week 2 days 4 hours 2 seconds"))    
//php获取下个星期四日期    
date("Y-m-d",strtotime("next Thursday"))    
//php获取上个周一日期    
date("Y-m-d",strtotime("last Monday"))    
//php获取一个月前日期    
date("Y-m-d",strtotime("last month"))    
//php获取一个月后日期    
date("Y-m-d",strtotime("+1 month"))    
//php获取十年后日期    
date("Y-m-d",strtotime("+10 year"))    
//php获取今天起止时间戳    
mktime(0,0,0,date('m'),date('d'),date('Y'));    
mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;    
//php获取昨天起止时间戳    
mktime(0,0,0,date('m'),date('d')-1,date('Y'));    
mktime(0,0,0,date('m'),date('d'),date('Y'))-1;    
//php获取上周起止时间戳    
mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'));    
mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'));    
//php获取本月起止时间戳    
mktime(0,0,0,date('m'),1,date('Y'));    
mktime(23,59,59,date('m'),date('t'),date('Y'));
 
计算起止日期(列出起止日期区间所有日期)
$data=$this->date_range(date('Y-m-d',$time2),date('Y-m-d',$time1));
//起止日期计算
    function date_range($first$last$step '+1 day'$format 'Y-m-d')
    {
        $dates   array();
        $current strtotime($first);
        $last    strtotime($last);
 
        while ($current <= $last) {
            $dates[] = date($format$current);
            $current strtotime($step$current);
        }
        return $dates;
    }
     
  /**
   * 计算上一个月的今天,如果上个月没有今天,则返回上一个月的最后一天
   * @param type $time
   * @parma key 传入加减的月份数字
   * @return type
   */
   function last_month_today($time,$key=''){
      $last_month_time mktime(date("G"$time), date("i"$time),
          date("s"$time), date("n"$time), 0, date("Y"$time));
      $last_month_t =  date("t"$last_month_time);
 
      if ($last_month_t date("j"$time)) {
          return date("Y-m-t H:i:s"$last_month_time);
      }
if(isset($key)&&!empty($key)){
    return date(date("Y-m",strtotime("-".$key"month")) . "-d"$time);
}else{
    return date(date("Y-m"$last_month_time) . "-d"$time);
}
 
  }

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
PHP:laravel日期序列化自定义默认日期格式
PHP:laravel日期序列化自定义默认日期格式
21 0
php计算两个日期之间的间隔,避免导出大量数据
在做系统业务功能的时候,有的时候业务人员会进行超大范围地导出excel表格,导致内存、CPU占用飙升。 这对于系统的平滑运行不太友好,应该进行导出任务排队、限制范围等操作来控制频率、资源使用率。
40 0
php获取指定日期区间的所有日期,php输出指定范围的所有日期
php获取指定日期区间的所有日期,php输出指定范围的所有日期
87 0
【PHP】获取近七天的日期
【PHP】获取近七天的日期
80 0
PHP日期时间运用十一:三种方法比较两个指定的日期
在之前的文章《PHP日期时间运用十:将秒数转成格式为“天时分秒”》中给大家介绍了怎么将秒数转成格式为“天时分秒”,那么本文继续开始PHP日期时间系列的文章~ 正如标题所述,本文主要内容是给大家介绍比较两个指定日期的三种方法! 假设我们给定两个日期(date1 和 date2),当两个日期的格式相同时,在 PHP 中比较这两个日期是很简单的,但是当两个日期的格式不同时就会出现一些问题。
259 0
PHP函数运用之返回某个日期的前一天和后一天
在上一篇文章《PHP函数运用之计算截止某年某月某日共有多少天》中,我们介绍了利用strtotime()函数计算两个给定日期间时间差的方法。这次我们来来看看给大一个指定日期,怎么返回它前一天和后一天的日期。感兴趣的朋友可以学习了解一下~ 本文的重点是:返回给定时间的前一天、后一天的日期。那么要怎么操作呢? 其实很简单,PHP内置的strtotime() 函数就可以实现这个操作!下面来看看我的实现方法: 返回某个日期的前一天的实现代码
574 0
PHP date()日期和时间函数语法使用详解
date()是PHP的时间日期函数,date()能够将时间戳格式化为易读的日期和时间,码笔记分享PHP date()日期和时间函数语法使用详解: PHP date()函数 date()的参数: a:am或者pm; A:AM或者PM; D:星期几,3个英文字母表示,例如:"Fri"; d:即day...
865 0
+关注
科技小能手
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
PHP 2017.北京 全球开发者大会——高可用的PHP
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
相关实验场景
更多