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
澳大利亚:Australia/Sydney
原址:http://hailinhe1986-163-com.javaeye.com/blog/484538
- 浏览: 51061 次
- 性别:
相关推荐
本工具用于将时间戳转换为日期,支持10位和13位。
欢迎使用渝海UNIX时间戳转换工具,本工具运行环境需求:PHP。 大部分网络应用存储时间值都是时间戳数字,如果您需要知道对应标准时间,或调整标准时间在数据库中的值,使用本工具就可以轻松实现。 升级说明: 1、...
对于unix时间戳来说,可以很方便的查询和转换。php等程序都可以借鉴的。
这段代码可以用来转换常规时间格式为unix时间戳,也可以将unix时间戳转换回来, 例如:1332888820 格式转换成 2012-03-28 06:53:40的形式 # -*- coding: utf-8 -*- import time def timestamp_datetime(value): ...
基于PHP的UNIX时间戳转换工具源码.zip
基于PHP的UNIX时间戳转换工具 V1.1.zip
PHP实例开发源码—UNIX时间戳转换工具.zip
基于PHP的UNIX时间戳转换工具V1.1源码.zip
PHP时间戳与日期之间转换 <?php echo(strtotime("now")); echo(strtotime("3 October 2005")); echo(strtotime("+5 hours")); echo(strtotime("+1 week")); echo(strtotime("+1 week 3 days 7 hours 5 ...
在php中我们要把时间戳转换日期可以直接使用date函数来实现,如果要把日期转换成时间戳可以使用strtotime()函数实现,下面我来给大家举例说明。 1.php中时间转换函数 strtotime (date()) date(Y-m-d H:i,$unixtime)...
NULL 博文链接:https://onestopweb.iteye.com/blog/2355748
本篇文章是对php中时间戳与日期的转换进行了详细的分析介绍,需要的朋友参考下
① 时间戳转换成日期 代码如下: FROM_UNIXTIME 例如: 数据表中 invest_time 存储的是时间戳,如 1429063399 使用 FROM_UNIXTIME 可以把时间戳转换为日期: 代码如下: select FROM_UNIXTIME(invest_time,’%Y年%m...
主要介绍了PHP基于DateTime类解决Unix时间戳与日期互转问题,通过DateTime类解决1970年前及2038年后时间戳显示与计算问题,非常简单实用,代码中备有较为详尽的注释便于理解,需要的朋友可以参考下
复制代码 代码如下:<... 您可能感兴趣的文章:php实现兼容2038年后Unix时间戳转换函数PHP中UNIX时间戳和日期间的转换与计算实例php 创建以UNIX时间戳命名的文件夹(示例代码)PHP+Mysql日期时间如何转换(UNIX时
* 转换10位时间戳工具,返回String的“yyyy-MM-dd”时间 * @param datetime int型10位时间戳 */ public static String formatDate(int datetime){ SimpleDateFormat sdf = null; String dateTime = null;...
1.php中时间转换函数 ...3.php中时间戳转换为日期,并按照时间显示不同的内容,如刚刚,分钟前,小时前,今天,昨天等 /*时间转换函数*/ function transTime($ustime) { $ytime = date(“Y-m-d H:i”,$ust