Apr 16

php和mysql时间互换 不指定

felix021 @ 2008-4-16 16:02 [IT » 数据库] 评论(3) , 引用(0) , 阅读(17640) | Via 本站原创 | |
from http://hi.baidu.com/beidu/blog/item/e3d1b7fd5a4dd31309244d5e.html

php和mysql时间互换

在mysql中有三种时间字段类型:DATETIME,DATE和TIMESTAMP。

DATETIME以YYYY-MM-DD HH:MM:SS格式的字符串来保存数据;DATE则是只有年月日以YYYY-MM-DD形式的字串;TIMESTAMP类型和PHP中的TIMESTAMP类型名字一样,但是两者基本上是不同的。

PHP是延用了UNIX时间签的类型为一个整数,而在mysql中TIMESTAMP字段则是随着记录变化而一个自动更新为当时时间的DATETIMP字段。

在mysql4.1版本之后TIMESTAMP格式和DATETIME格式基本上是一致了。

于是常常需要在php和msql中对两种格式的Timestamp进行转换。转换方法总结一下:

第一种方法:使用 date()和strtotime()函数

       $mysqltime=date('Y-m-d H:i:s',$phptime);

       $phptime=strtotime($mysqldate);

第二种方法:在查询语句中使用mysql函数转换:UNIX_TIMESTAMP(DATETIME=>PHP TIMESTAMP)和FROM_UNIXTIME(PHP TIMESTAMP=>DATETIME).

        $sql="SELECT UNIX_TIMESTAMP(datetimefield) FROM table WHERE ...";

        $sql="UPDATE table set datetimefield=FROM_UNIXTIME($phptime) WHERE ..";

第三种方法:就是mysql中使用整数字段来保存php的timestamp类型。



欢迎扫码关注:




转载请注明出自 ,如是转载文则注明原出处,谢谢:)
RSS订阅地址: https://www.felix021.com/blog/feed.php
Tags: , ,
juzi
2011-4-13 22:36
很有用的!谢谢了
Jerry
2009-5-18 19:19
非常好,感谢分享~
在路上 Email Homepage
2008-7-6 00:49
zan呵呵,不错,又学到一招!grin
分页: 1/1 第一页 1 最后页
发表评论
表情
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   *非必须
网址   电邮   [注册]