php时间戳与日期互转
PHP时间大的来分有两种,一是时间戳类型(1228348800),二是正常日期格式(2008-12-4)
所以存到数据库也有两种形式了(真正不止,我的应用就两种),时间戳类型我是保存为字符串的,这个是比较方便的.
正常日期类型是保存为DATE型的.
这两个要注意一下,我平时用两种,所以,前几天建的表,把时间类型存为DATE的,我还一直用时间戳保存,一直资料写不进表,调试了好久的才知错误之处,是类型不符合,不给写入库.
像上面的时间戳是比较方便,但,显示的时候,不至于把这个1228348800串给客户看吧,GOD NOWS!
所 以就用到了这两个的转换,先说一下如何取得当前的时间戳,$date1=time();这样就取得当前的时间戳了,要转回2008-12-4这种格式呢, 用到date()这个函数了,在PHP中date()函数比较常用,如取得当前日期,可以用$date2=date('Y-m-d');,关于里面参数的 意思,如不懂就查一下php的手册了.
好,言归正传,把1228348800转成2008-12-4格式代码如下:
$date3=date('Y-m-d H:i:s',"1228348800");
这样就OK了,如还想得到小时,分钟秒,只要把'Y-m-d'改一下就可以了,不过要注意一下,PHP时间还像有8个小时的误差.加上就OK了.
时间戳转正常日期有了,反之呢,把正常日期格式转为时间戳呢,请看如下代码:
$year=((int)substr("2008-12-04",0,4));//取得年份
$month=((int)substr("2008-12-04",5,2));//取得月份
$day=((int)substr("2008-12-04",8,2));//取得几号
echo mktime(0,0,0,$month,$day,$year);
这样就能把正常日期转成时间戳了,这里如果有时分秒也是同理,
注意:php5.1以上时间戳会与实际时间相差8小时,解决办法如下
1、最简单的方法就是不要用php5.1以上的版本--显然这是不可取的方法!!!
2、修改php.ini。打开php.ini查找date.timezone 去掉前面的分号= 后面加Asia/Shanghai,重启apache服务器即可--缺点就是如果程序
放到别人的服务器上,不能修改php.ini,那就奈何不得了。
3、在程序中添加时间的初始化的语句的 即:“date_default_timezone_set("Asia/Shanghai"); ”这个可以由程序员任意设置,我的推
荐。
时区标识符,大陆内地可用的值是:PRC,Asia/Chongqing ,Asia/Shanghai ,Asia/Urumqi (依次为中国,重庆,上海,乌鲁木齐) ,Etc/GMT-8,Asia/Harbin
港台地区可用:Asia/Macao ,Asia/Hong_Kong ,Asia/Taipei (依次为澳门,香港,台北)
还有新加坡:Asia/Singapore
分享到:
相关推荐
计算机后端-PHP视频教程. php与mysql加强- 03. php加强30-时间戳函数.wmv
获取指定的年月日转化为时间戳:pHP时间戳函数获取指定日期的unix时间戳 strtotime(‘2012-12-7’)示例如下:复制代码 代码如下:<?php echo strtotime(‘2012-12-7’); //结果:1354838400 ?>说明:返回2012...
一,PHP时间戳函数获取指定日期的unix时间戳 strtotime(”2009-1-22″) 示例如下: echo strtotime(”2009-1-22″) 结果:1232553600 说明:返回2009年1月22日0点0分0秒时间戳 二,PHP时间戳函数获取英文文本日期...
这个是可以具体到小时的php代码复制代码 代码如下:/* Author: 杨宇 yangyu@sina.cn */ //输入两个时间戳,计算差值,也就是相差的小时数,如返回2:10,则表示输入的两个时间相差2小时10分钟 function hours_min($...
本文将深入探讨这个主题,包括时间戳的概念、PHP中的日期时间函数以及如何在两者之间进行转换。 首先,理解时间戳的概念至关重要。时间戳是一个数字值,表示自1970年1月1日(UTC/GMT的午夜)以来的秒数,不考虑闰秒...
这个函数使用了正则表达式,支持了自定义日期格式的输出,类似于PHP中的date函数。这个转换函数同样兼容了老版本的浏览器。在函数内部,首先通过传入的时间戳参数创建一个JavaScript的Date对象。随后,定义了辅助...
在PHP编程语言中,时间函数的应用是至关重要的,它们允许开发者处理与日期和时间相关的各种任务,例如获取当前时间、格式化时间戳、计算时间差等。本篇将深入探讨PHP时间函数的使用方法和常见应用场景。 首先,PHP...
为了解决这个问题,PHP提供了64位时间戳支持,但并不是所有函数都自动兼容。因此,我们需要自定义函数来实现兼容2038年后Unix时间戳的转换。 标题提到的两个自定义函数`fun_strtotime`和`fun_date`是为了在PHP中...
- 获取Unix时间戳:`time()` 函数返回当前时间的Unix时间戳。 - 转换回普通时间:使用 `localtime` 函数。 6. **PHP**: - 获取Unix时间戳:`time()` 函数直接返回当前时间的Unix时间戳。 - 转换回普通时间:`...
总的来说,PHP提供了灵活的方式来处理时间戳与日期的转换,无论是从用户输入的文本日期解析时间戳,还是从时间戳生成易读的日期,都可通过`strtotime()`和`date()`函数轻松完成。结合`mktime()`函数,我们还可以精确...
6. **日期和时间函数**:`date()`格式化当前日期和时间,`strtotime()`将日期或时间字符串转换为Unix时间戳,`sleep()`则让程序暂停指定秒数。 7. **错误和异常处理**:`error_reporting()`设置错误报告级别,`try....
在PHP中,处理时间戳非常简单,因为内置了丰富的日期和时间函数。 1. **UNIX时间戳与PHP的关系:** PHP提供了许多与时间相关的函数,如`time()`,用于获取当前UNIX时间戳;`strtotime()`,可以将人类可读的时间...
PHP的时间和日期函数包括`time()`获取当前Unix时间戳,`date()`格式化日期和时间,`strtotime()`解析日期时间字符串,`mktime()`生成时间戳,`sleep()`暂停程序执行,以及`strftime()`格式化本地日期和时间。...
强制返回整数型时间戳,如果错误返回false document.write(strtotime('now')); document.write(strtotime('next Sunday')); document.write(strtotime('last month')); document.write(strtotime('+1 weeks')); ...
在PHP编程语言中,函数是实现特定功能的代码块,可以重复使用,极大地提高了开发效率。"非常实用的PHP函数大全"这个资源包含了多个常用且功能丰富的PHP函数,旨在帮助开发者快速查找和理解这些函数的用途。下面将...
1. **PHP的时间函数**:PHP提供了丰富的日期和时间处理函数,如`time()`,它返回当前UNIX时间戳;`strtotime()`,可以将各种格式的日期字符串转化为UNIX时间戳;以及`date()`和`strftime()`,它们可以根据UNIX时间戳...
这里,`time()`函数返回当前Unix时间戳,将其存储在`$_SESSION['timestamp']`中。每次用户访问时,可以检查这个时间戳是否过期,如超过一定时间则注销用户。 **设置Token** 在PHP中,创建Token可以自定义实现,也...
- 时间戳与日期的转换函数:可能使用PHP的`strtotime`和`time`函数,或者其他编程语言的相应函数。 - 时区处理:可能使用PHP的`date_default_timezone_set`和`DateTimeZone`类来处理时区。 - 输出格式化:将日期和...
要获取当前时间的时间戳,可以使用PHP内置的`time()`函数,它无参数,返回当前时间的整型时间戳。这个函数在处理动态时间信息时非常有用,如记录事件发生的时间或计算两个时间点之间的差值。 此外,PHP还提供了`...