php mktime()函数

PHP提供一个很好用的函数mktime()。
你只要按顺序传送给mktime()你希望表示的小时,分钟,秒数,月份,日期,及年份,
mktime()就会返回该日期自1970年1月1日的总秒数。
获取2000年1月1日到1970.1.1的总秒数
$y2k = mktime(0,0,0,1,1,2000);

备注:unix time的纪元时间为啥是1970年1月1日。想过没。??

很多编程语言起源于UNIX系统,而UNIX系统认为1970年1月1日0点是时间纪元,所以我们常说的UNIX时间戳是以1970年1月1日0点为计时起点时间的。

最初计算机操作系统是32位,而时间也是用32位表示。

System.out.println(Integer.MAX_VALUE);

2147483647

例如。Integer 在JAVA内用32位表示,因此32位能表示的最大值是2147483647。另外1年365天的总秒数是 31536000,2147483647/31536000 = 68.1,也就是说32位能表示的最长时间是68年,从1970年开始的话,加上68.1,实际最终到2038年01月19日03时14分07秒,便会到 达最大时间,过了这个时间点,所有32位操作系统时间便会变为10000000 00000000 00000000 00000000,算下来也就是1901年12月13日20时45分52秒,这样便会出现时间回归的现象,很多软件便会运行异常了。

到 这里,我想问题的答案已经显现出来了,那就是:因为用32位来表示时间的最大间隔是68年,而最早出现的UNIX操作系统考虑到计算机产生的年代和应用的 时限综合取了1970年1月1日作为UNIX TIME的纪元时间(开始时间),至于时间回归的现象相信随着64为操作系统的产生逐渐得到解决,因为用64位操作系统可以表示到 292,277,026,596年12月4日15时30分08秒,相信我们的N代子孙,哪怕地球毁灭那天都不用愁不够用了,因为这个时间已经是千亿年以后 了。

时间: 2024-11-08 17:30:42

php mktime()函数的相关文章

PHP mktime函数获取今天的开始和结束时间戳

php 获取今日.昨日.上周.本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime(). mktime函数用法如下:mktime(hour,minute,second,month,day,year,is_dst) 参数描述 hour  可选.规定小时. minute 可选.规定分钟. second 可选.规定秒. month  可选.规定用数字表示的月. day   可选.规定天. year  可选.规定年.在某些系统上,合法值介于 1901 - 2038 之间.不

C语言中mktime函数功能及用法

今天联系写一个日历的程序,需要算出月份中的第一天是星期几,用到了mktime()这个函数,感觉这个函数挺有用的,分享给大家. 原型:time_t mktime(struct tm *) 其中的tm结构体定义如下: struct tm { int tm_sec; /* 秒 – 取值区间为[0,59] */ int tm_min; /* 分 - 取值区间为[0,59] */ int tm_hour; /* 时 - 取值区间为[0,23] */ int tm_mday; /* 一个月中的日期 - 取值

如果mktime慢?那就使用自定义函数吧!

参考网址:https://gmbabar.wordpress.com/2010/12/01/mktime-slow-use-custom-function/ 最近我正在做以ASCII(C字符串)格式表示的时间戳的工作.为了不同的计算,我经常需要转换时间戳字符串到epoch时间.标准C库提供mktime函数,它把已经填充的tm结构作为参数传递给mktime函数.如果你不非常频繁的使用该函数,它工作的很好.但是如果你需要在运行时转换数以万计的时间戳字符串,这个函数就变成应用程序的瓶颈.我没有尝试去阅

PHP 中日期时间函数 date() 用法总结

[导读] date()是我们常用的一个日期时间函数,下面我来总结一下关于date()函数的各种形式的用法,有需要学习的朋友可参考.格式化日期date() 函数的第一个参数规定了如何格式化日期 时间.它使用字母来表示日期和时间 格式化日期date() 函数的第一个参数规定了如何格式化日期/时间.它使用字母来表示日期和时间的格式.这里列出了一些可用的字母: •d - 月中的天 (01-31)•m - 当前月,以数字计 (01-12)•Y - 当前的年(四位数)您可以在我们的 PHP Date 参考手

Linux时间函数

系统环境:ubuntu10.04 1.Linux下常用时间类型time_t.struct tm.struct timeval.struct timespec 1.1 time_t时间类型time_t类型在time.h中定义:typedef long time_t; 可见,time_t实际是一个长整型.其值表示为从UTC(coordinated universal time)时间1970年1月1日00时00分00秒(也称为Linux系统的Epoch时间)到当前时刻的秒数.由于time_t类型长度的

php--常用的时间处理函数

天地四方曰宇,往古来今曰宙 时间是世界的重要组成部分,不论花开花落,还是云卷云舒都有它的影子. 但它源起何处?又将去向何方?没人知道答案,也不需要答案,我们需要的只是一个相对的起点来标识时间,现今世界普遍采用公元纪年法来表示. 公元纪年法以耶稣诞生日记为公元1年(没有公元0年),中国处于汉平帝刘衎(不会读...)登基第二年即元始元年. 关于时间的另一个概念是unix时间戳,是从1970年1月1日开始所经过的秒数,不考虑闰秒,什么是闰秒参考这里. 下面就来说说php中时间的处理方法,以获取当前时间

PHP 各种函数

usleep() 函数延迟代码执行若干微秒. unpack() 函数从二进制字符串对数据进行解包. uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID. time_sleep_until() 函数延迟代码执行直到指定的时间. time_nanosleep() 函数延迟代码执行若干秒和纳秒. sleep() 函数延迟代码执行若干秒. show_source() 函数对文件进行语法高亮显示. strip_whitespace() 函数返回已删除 PHP 注释以及空白字符的源代码文件.

php函数整理

php usleep() 函数延迟代码执行若干微秒. unpack() 函数从二进制字符串对数据进行解包. uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID. time_sleep_until() 函数延迟代码执行直到指定的时间. time_nanosleep() 函数延迟代码执行若干秒和纳秒. sleep() 函数延迟代码执行若干秒. show_source() 函数对文件进行语法高亮显示. strip_whitespace() 函数返回已删除 PHP 注释以及空白字符的源代

php时间函数

实例讲解之前,先来介绍几个核心函数: mktime 函数 mktime() 函数返回一个日期的 Unix 时间戳. 参数总是表示 GMT 日期,因此 is_dst 对结果没有影响. 参数可以从右到左依次空着,空着的参数会被设为相应的当前 GMT 值. 语法:mktime(hour,minute,second,month,day,year,is_dst)参数               描述  hour       可选.规定小时.  minute   可选.规定分钟.  second   可选.