程序中时间的分析及探讨

        不管是哪门编程语言都会有详细的文档及丰富的API来满足程序中对时间的使用。

时间在使用过程中就显的很重要。让我们来分析下程序数据的时间。

时间的组成:年月日时分秒

很简单,就是有六个元素所构成的标识时间的概念。

我们常用的时间功能会有哪些?

1.      当天/当时的时间,包括当天的年月日,当时的时分秒。

2.      时间的前后推算。

        例如:了解前一天,前N天的日期。后一天,后N天的日期。

3.      随着区域化的产生,时间也有不同区域的要求。

         对于不同的区域显示的时间是不一致的,但是他们的时间差是一直的。

4.      时间的展示方式多种多样。常用的格式主要有”YYYY-MM-DD HH:MM:SS”,

”YYYY/MM/DD HH:MM:SS” 等。格式之间的转换也显得越来越需要。

常见的转换:时间戳与时间字符的转换。

5.      日期见的差异及比较是非常需要的。

经常我们会问日期A与日期B相差几天。类似的差异很多。

6.      特殊日期的处理。例如闰年的处理。

 

我采用PHP语言来探讨下有关程序中的时间。

为了满足以上提出的功能,PHP自身有些基本的时间函数。

而这些函数并不能直接解决上述问题,需要对这些函数进行封装及相关的处理。

PHP常用的函数有哪些?

1.      inttime( void )  获取当前的时间

2.      stringdate ( string $format [, int$timestamp ] )获取日期

3.      mktime时间的前后推算

4.      strtotime字符串转换成时间戳

5.      microtime精确到微妙的日期函数

6   localtime 获取本地的时间

 

而这几个简单的函数有什么怎么组合来满足我们日常的运用的?

或者扩展我们的运用的?

以下我给出一些简易的代码实现。(详细的代码见Date.class.php文件)

    /**
     * 获取当前的时间
     */
    public function getDate(){
    	
    	return time();
    }
    
    /**
     * 获取N周前的日期
     */
    public function getBeforeWeekDate($n){
    	return date("Y-m-d",mktime(0,0,0,date("m"),date("d")-7*$n,date("Y")));
    }
     /**
     * 获取N月前的日期
     */
    public function getBeforeMonthDate($n){
    	return date("Y-m-d",mktime(0,0,0,date("m")-$n,date("d"),date("Y")));
    }
    
    /**
     * 获取两个日期之间的日期
     */
    function datesInBetween($date1, $date2){
		    $day = 60*60*24;
		    $date1 = strtotime($date1);
		    $date2 = strtotime($date2);
		    $days_diff = round(($date2 - $date1)/$day); 
		    $dates_array = array();
		    $dates_array[] = date('Y-m-d',$date1);
		    for($x = 1; $x < $days_diff; $x++){
		        $dates_array[] = date('Y-m-d',($date1+($day*$x)));
		    }
		    $dates_array[] = date('Y-m-d',$date2);
		    return $dates_array;
	}

 

 

ps:

真心不喜欢CSDN采用这种资源的统一管理方式。太浪费时间了。

上传一个简单的文档都非常的麻烦。这样的效率太低下了。

希望CSDN能在这方面有所改善。

参考文献:

1.时间的JS文件。

Datepicker

2.日期转换。

http://tool.chinaz.com/Tools/unixtime.aspx

3.Php中文手册

 http://download.csdn.net/detail/shupan/5281934

这些在我的资源中可以免费下载。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
资源包主要包含以下内容: ASP项目源码:每个资源包都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值