ahxcjxzxh 发表于 2018-12-18 12:45:44

PHP和Mysql的Timestamp互换

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

页: [1]
查看完整版本: PHP和Mysql的Timestamp互换