php中根据某年第几天计算出日期年月日的代码


Posted in PHP onFebruary 24, 2011

这个索引值除了方便面数据的记录和搜索,还起着记录日期资讯的作用,信息量很可观。
那么,如何还原索引值为可用的日期资讯呢?
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。
PHP 相关文章推荐
如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
Mar 06 PHP
PHP内核探索:哈希表碰撞攻击原理
Jul 31 PHP
分享PHP计算两个日期相差天数的代码
Dec 23 PHP
PHP 使用 Imagick 裁切/生成缩略图/添加水印自动检测和处理 GIF
Feb 19 PHP
Yii2框架BootStrap样式的深入理解
Nov 07 PHP
php利用ob_start()清除输出和选择性输出的方法
Jan 18 PHP
thinkPHP框架自动填充原理与用法分析
Apr 03 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
Jun 16 PHP
用PHP做了一个领取优惠券活动的示例代码
Jul 05 PHP
laravel-admin 中列表筛选方法
Oct 03 PHP
关于Laravel参数验证的一些疑与惑
Nov 19 PHP
PHP 扩展Memcached命令用法实例总结
Jun 04 PHP
PHP中防止SQL注入实现代码
Feb 19 #PHP
简单的移动设备检测PHP脚本代码
Feb 19 #PHP
PHP下通过file_get_contents的代理使用方法
Feb 16 #PHP
php文件上传表单摘自drupal的代码
Feb 15 #PHP
php 连接mysql连接被重置的解决方法
Feb 15 #PHP
php中获取关键词及所属来源搜索引擎名称的代码
Feb 15 #PHP
php批量缩放图片的代码[ini参数控制]
Feb 11 #PHP
You might like
利用static实现表格的颜色隔行显示
2006/10/09 PHP
destoon实现VIP排名一直在前面排序的方法
2014/08/21 PHP
PHP面向对象程序设计之命名空间与自动加载类详解
2016/12/02 PHP
Windows平台实现PHP连接SQL Server2008的方法
2017/07/26 PHP
实现PHP中session存储及删除变量
2018/10/15 PHP
Laravel 默认邮箱登录改成用户名登录的实现方法
2019/08/12 PHP
redis+php实现微博(三)微博列表功能详解
2019/09/23 PHP
php判断某个方法是否存在函数function_exists (),method_exists()与is_callable()区别与用法解析
2020/04/20 PHP
jquery+css+ul模拟列表菜单具体实现思路
2013/04/15 Javascript
jquery判断小数点两位和自动删除小数两位后的数字
2014/03/19 Javascript
javascript事件冒泡详解和捕获、阻止方法
2014/04/12 Javascript
动态加载iframe时get请求传递中文参数乱码解决方法
2014/05/07 Javascript
js判断游览器类型及版本号的代码
2014/05/11 Javascript
javascript数组去重的方法汇总
2015/04/14 Javascript
JavaScript获得url查询参数的方法
2015/07/02 Javascript
javascript学习总结之js使用技巧
2015/09/02 Javascript
详解AngularJS中$http缓存以及处理多个$http请求的方法
2016/02/06 Javascript
Angular的Bootstrap(引导)和Compiler(编译)机制
2016/06/20 Javascript
关于vue v-for循环解决img标签的src动态绑定问题
2018/09/18 Javascript
Nodejs中的require函数的具体使用方法
2019/04/02 NodeJs
vue-cli3 DllPlugin 提取公用库的方法
2019/04/24 Javascript
老生常谈Python基础之字符编码
2017/06/14 Python
django使用html模板减少代码代码解析
2017/12/12 Python
Python将8位的图片转为24位的图片实现方法
2018/10/24 Python
Python如何基于selenium实现自动登录博客园
2019/12/16 Python
Python多进程编程常用方法解析
2020/03/26 Python
python爬虫容易学吗
2020/06/02 Python
HTML5中Canvas与SVG的画图原理比较
2013/01/16 HTML / CSS
什么是GWT的Entry Point
2013/08/16 面试题
酒吧副总经理岗位职责
2013/12/10 职场文书
汉语言文学专业自荐信
2014/06/11 职场文书
英文演讲稿开场白
2014/08/25 职场文书
校长四风对照检查材料
2014/09/27 职场文书
创业项目(超低成本创业项目)
2019/08/16 职场文书
海弦WR-800F
2022/04/05 无线电
Redis基本数据类型Zset有序集合常用操作
2022/06/01 Redis