本文章来给各位同学介绍一下利用php用strtotime或mktime指定日期数据(本周,上周,本月,上月,本季度)实例,希望对各位同学会有所帮助呀。

strtotime定义和用法

strtotime() 函数将任何英文文本的日期时间描述解析为 Unix 时间戳。

语法:strtotime(time,now),time 规定要解析的时间字符串,now 用来计算返回值的时间戳,如果省略该参数,则使用当前时间。

实例代码如下:

  1. echo date("Y-m-d",strtotime("now")), "";
  2. echo date("Y-m-d",strtotime("-1 week Monday")), ""; //离现在最近的周一
  3. echo date("Y-m-d",strtotime("-1 week Sunday")), ""; //离现在最近的周末
  4. echo date("Y-m-d",strtotime("+0 week Monday")), ""; //将要到来的周一
  5. echo date("Y-m-d",strtotime("+0 week Sunday")), ""; //将要到来的周末
  6. echo date("n");// 第几个月
  7. echo date("w");//本周周几
  8. echo date("t");// 本月天数
  9. echo "上周:";

mktime函数

mktime() 函数返回一个日期的 Unix 时间戳,参数总是表示 GMT 日期,因此 is_dst 对结果没有影响,参数可以从右到左依次空着,空着的参数会被设为相应的当前 GMT 值.

语法:mktime(hour,minute,second,month,day,year,is_dst)

实例代码如下:

  1. echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1-7,date("Y"))),"";
  2. echo date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7-7,date("Y"))),"";
  3. echo "
  4. 本周:
  5. ";
  6. echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y"))),"";
  7. echo date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y"))),"";
  8. echo "
  9. 上月:
  10. ";
  11. echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m")-1,1,date("Y"))),"";
  12. echo date("Y-m-d H:i:s",mktime(23,59,59,date("m") ,0,date("Y"))),"";
  13. echo "
  14. 本月:
  15. ";
  16. echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),1,date("Y"))),"";
  17. echo date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("t"),date("Y"))),"";
  18. $getMonthDays = date("t",mktime(0, 0 , 0,date("n")+(date("n")-1)%3,1,date("Y")));//本季度未最后一月天数
  19. echo "
  20. 本季度:
  21. ";
  22. echo date('Y-m-d H:i:s', mktime(0, 0, 0,date('n')-(date('n')-1)%3,1,date('Y'))),"";
  23. echo date('Y-m-d H:i:s', mktime(23,59,59,date('n')+(date('n')-1)%3,$getMonthDays,date('Y'))),"";
  24. $jdtoday = gregoriantojd(date('n'), date('j'), date('y'));
  25. $offset = jddayofweek($jdtoday)-1;
  26. for($i=0-$offset; $i<7-$offset; $i++){
  27. $date = strtotime($i.' days');
  28. echo(''.date('D', $date).'/'.date('n-j', $date).'');
  29. }
  30. ?>

参数        描述

hour        可选。规定小时。

minute      可选。规定分钟。

second      可选。规定秒。

month       可选。规定用数字表示的月。

day         可选。规定天。

year        可选。规定年。

在某些系统上,合法值介于 1901 - 2038 之间,不过在 PHP 5 中已经不存在这个限制了。

is_dst  可选。如果时间在日光节约时间(DST)期间,则设置为1,否则设置为0,若未知,则设置为-1。

自 5.1.0 起,is_dst 参数被废弃,因此应该使用新的时区处理特性。

php mktime和strtotime的更多相关文章

  1. 微信JS-SDK接口,分享到朋友圈”按钮点击状态及自定义分享内容接口

    jssdk.php 接口文件class JSSDK { private $appId; private $appSecret; public function __construct($appId, ...

  2. 使用strtotime和mktime时参数为0时返回1999-11-30的时间戳问题

    先看例子 代码如下 复制代码 <?php $time = date('Y-m-d',strtotime('00-00-00 00:00:00')); echo $time; //输出 1999- ...

  3. php strtotime,mktime,DateTime函数处理时间累加问题

    时间戳(年月日时分秒)  使用strtotime函数,结合+1 month,-1 month,next month,last month的时候会出现一些问题. demo示例: //时间"20 ...

  4. C#时间转整型(时间戳),模仿php strtotime函数的部分功能

    今天需要将一个基于MS SQL数据库的新闻系统数据导入phpcms v9,源系统新闻日期格式为"2014-01-15 10:45:49",而phpcms中使用的是整型时间戳,在ph ...

  5. 当碰到unix纪元问题时strtotime怎么转时间戳(DateTime类的使用方法)

    UNIX纪元时间又称POSIX时间/新纪元时间(Epoch Time):从协调世界时1970年1月1日0时0分0秒起到现在的总秒数,不包括闰秒.正值表示1970以後,负值则表示1970年以前. Uni ...

  6. PHP中strtotime函数使用方法分享

    在PHP中有个叫做strtotime的函数.strtotime 实现功能:获取某个日期的时间戳,或获取某个时间的时间戳.strtotime 将任何英文文本的日期时间描述解析为Unix时间戳[将系统时间 ...

  7. php strtotime函数服务器和本地不相同

    遇到过一种情况strtotime 在本地和服务器不相同 服务器返回的是-1 strtotime($sa_sagyo_ymd."23:59:59") 如果这样用不了,就只能换一种写法 ...

  8. (转载)PHP strtotime函数详解

    (转载)http://www.jb51.net/article/21495.htm strtotime函数是一个很好的函数,灵活的运用它,会给你的工作带来不少方便.但PHP的手册中却对此函数的参数没作 ...

  9. 转载:PHP时间戳 strtotime()使用方法和技巧

    在php中我想要获取时间戳有多种方法,最常用的就是使用time函数与strtotime()函数把日期转换成时间戳了 获取指定的年月日转化为时间戳:pHP时间戳函数获取指定日期的unix时间戳 strt ...

随机推荐

  1. js-内置对象及相关语法

    1:如图(视频截取的) this指的是当前标签的对象. var ary=new Array("mark","jay","leslie"); ...

  2. 【原创】你知道Oracle 10G能存多少数据吗

    昨天晚上在看Oracle 10G联机文档中关于bigfile tablespaces的描述(引用1),发现了关于Oracle存储极限的简单描述.bigfile tablespaces的存在,让Orac ...

  3. 08--MOOC--C/C++ 根据年月日计算星期几

    计算任何一天是星期几的几种算法 一:常用公式 W = [Y-1] + [(Y-1)/4] - [(Y-1)/100] + [(Y-1)/400] + D Y是年份数,D是这一天在这一年中的累积天数,也 ...

  4. SQL 分组

  5. vue中用v-for循环出出来的div下面的span不给宽度也能相对于div居中

    效果图 1.html <div> <div v-on:mousemove="dataDetails($event, item)" v-on:mouseleave= ...

  6. webstorm中vue项目--运行配制

    ## npm搭建的项目,需要运行npm run dev来启动 webstorm作为一款优秀的编辑器,通过配置运行设置,达到一键运行 1.添加node.js配置 2.configuration-> ...

  7. php curl选项列表(超详细)

    第一类:对于下面的这些option的可选参数,value应该被设置一个bool类型的值:选项可选value值备注 CURLOPT_AUTOREFERER当根据Location:重定向时,自动设置hea ...

  8. 15.id生成的两种方式

  9. 八进制、十六进制与十进制的转换,bytes的十六进制

    二进制.八进制.十六进制与十进制的不同顾名思义在于进位不同: 十进制遇十进一,9+1=10,19+1=20,199+1=200.相同数字前一位是后一位的十倍,例如11,前一个代表10,后一个是1. 一 ...

  10. datawhale爬虫实训4

    DataWhale-Task4(爬取丁香园2) 任务:使用lxml爬虫帖子相关的回复与部分用户信息(用户名,头像地址,回复详情) 难点:需要登录才能看到所有回复 浏览器登录上去,查看cookies信息 ...