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 );
}
 
   }
相关文章
|
9月前
|
PHP
php计算时间差转化时间戳函数strtotime
php计算时间差转化时间戳函数strtotime
45 0
|
9月前
|
Unix PHP
PHP快速入门05-时间日期与时区,附30个常用案例
PHP中的日期和时间处理功能极其强大,包括了多种格式化、解析、比较等常用操作。本文主要对此讲解。另外给出30个高频使用示范。
|
9月前
|
存储 SQL 数据库连接
php查询数据(日期查询)和fastadmin的日期查询
php查询数据(日期查询)和fastadmin的日期查询
|
9月前
|
SQL JSON 关系型数据库
php执行语句在MySQL批量插入大数据量的解决方案及计算程序执行时间(大数据量、MySQL语句优化)
php执行语句在MySQL批量插入大数据量的解决方案及计算程序执行时间(大数据量、MySQL语句优化)
195 1
|
9月前
|
PHP
php清洗数据实战案例(4):按照关联数组相同值名称进行筛选后对不同的指标予以合并计算的解决方案
php清洗数据实战案例(4):按照关联数组相同值名称进行筛选后对不同的指标予以合并计算的解决方案
39 0
|
9月前
|
定位技术 PHP
php基于百度地图封装的对象类实现计算地图上两点间的距离和地理编码
php基于百度地图封装的对象类实现计算地图上两点间的距离和地理编码
60 0