收藏-php中某年第几天计算出日期年月日的代码

很实用的小功能,希望对大家有帮助。

这个索引值除了方便面数据的记录和搜索,还起着记录日期信息的作用,信息量很可观。
那么,如何还原索引值为可用的日期资讯呢?
date('z')返回的是一年中的第几天,返回值为从0开始至365的整数。要将这些整数还原为日期信息,我们只需要一个简单的计算。以今年(2008年)第159天(实际为160天,php中从0开始,0对应于常规的第一天)为例,计算它的日期、星期方法如下:

代码如下:

<?php
$MyDate=159; //第159天
$milliseconds = mktime(0,0,0,1,1,2008) + $MyDate * 86400; //取得UNIX时间戳记
$msg = date('F jS Y , l',$milliseconds); //格式化日期输出
echo $msg;
?>
运行以上程序,浏览器上显示的信息将是:June 8th 2008 , Sunday
解释:
一. $milliseconds是UNIX时间戳记变量,它表明2008年第159天所经历的从UNIX公元纪(1700年1月1日)以来的毫秒数,它将作为 参数用于date()函数中参与计算日期信息,是个重要的依据。要正确计算$milliseconds的值,我们首先需要得到2008年1日1日所经历的 毫秒数,即,mktime(0,0,0,1,1,2008),然后加上159天的毫秒数,即,$MyDate * 86400,因为,每一天的86400毫秒。
二. $msg是我们格式化输出的日期资讯,此变量值的取得通过date()函数,第一个参数“'F jS Y , l'”只是格式化格式,还可以根据需要设置为别的,第二个参数是毫秒数(长整型),其意义为从UNIX起始年到某个特定时刻所经历的毫秒总数。
为了验证程序的正确性,我们可以打印一下2008年6月8日所经历的毫秒数:mktime(0,0,0,6,8,2008),它的值将与$milliseconds是一样的:1212854400

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

目前评论:12   其中:访客  0   博主  0   引用   1

  1. avatar ZtyHome 3

    学习一下
    很实用

    • avatar yumanutong 5

      @ZtyHome 呵呵,今天看到,就收藏了!

  2. avatar 情侣盒子 2

    我觉得现在 我的目的就是来点AD的
    你们说的东西太深奥咯

    • avatar yumanutong 5

      @情侣盒子 额,这个是我转载的,呵呵!

  3. avatar Blues-the 2

    能看懂一点

    • avatar yumanutong 5

      @Blues-the 哈哈,CSS要是真的写起来,经常会纠结,要经常写,写多了自然会了,这就是层叠样式表!

      • avatar Blues-the 2

        @yumanutong 浏览器兼容很头疼

        • avatar yumanutong 5

          @Blues-the 的确,那么多浏览器,特别是IE多个版本兼容不一样!

          • avatar Blues-the 2

            @yumanutong 有时候一个问题得整好久,,,其实也是经验问题

          • avatar yumanutong 5

            @Blues-the 呵呵,是啊,我晕这是PHP的文章我们居然说CSS去了,我是后台看也没看相关文章,无语!

  4. avatar Jert 1

    最近我也在学习PHP就是希望能在鸟哥的基础上完事下博客!

评论加载中...

来自外部的引用: 1

  • SDT技术网文章索引-五月份下旬 | yumanutong blog

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

图片 表情