>  기사  >  php教程  >  PHP和Mysql的Timestamp互换

PHP和Mysql的Timestamp互换

WBOY
WBOY원래의
2016-06-12 20:06:371040검색

   在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类型。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.