PHP+Mysql日期时间如何转换(UNIX时间戳和格式化日期)

yipeiwu_com7年前Mysql基础
写过PHP+MySQL的程序员都知道有时间差,UNIX时间戳和格式化日期是我们常打交道的两个时间表示形式,Unix时间戳存储、处理方便,但是不直观,格式化日期直观,但是处理起来不如Unix时间戳那么自如,所以有的时候需要互相转换,下面给出互相转换的几种转换方式。

一、在MySQL中完成

  这种方式在MySQL查询语句中转换,优点是不占用PHP解析器的解析时间,速度快,缺点是只能用在数据库查询中,有局限性。

1. UNIX时间戳转换为日期用函数: FROM_UNIXTIME()

一般形式:select FROM_UNIXTIME(1156219870);

2. 日期转换为UNIX时间戳用函数: UNIX_TIMESTAMP()

一般形式:Select UNIX_TIMESTAMP('2006-11-04 12:23:00′);

举例:mysql查询当天的记录数:

$sql=”select * from message Where DATE_FORMAT(FROM_UNIXTIME(chattime),'%Y-%m-%d') = DATE_FORMAT(NOW(),'%Y-%m-%d') order by id desc”;

当然大家也可以选择在PHP中进行转换,下面说说在PHP中转换。

二、在PHP中完成

  这种方式在PHP程序中完成转换,优点是无论是不是数据库中查询获得的数据都能转换,转换范围不受限制,缺点是占用PHP解析器的解析时间,速度相对慢。

1. UNIX时间戳转换为日期用函数: date()

一般形式:date('Y-m-d H:i:s', 1156219870);

2. 日期转换为UNIX时间戳用函数:strtotime()

一般形式:strtotime('2010-03-24 08:15:42');

相关文章

php中选择什么接口(mysql、mysqli)访问mysql

我们知道,mysqli是PHP 5中新提供的MySQL接口,此接口使用了面向对象的思想。使用mysqli接口的代码可读性更强,其执行效率比mysql接口高。而且mysqli提供了一个能够...

php addslashes和mysql_real_escape_string

很好的说明了addslashes和mysql_real_escape_string的区别,虽然国内很多PHP coder仍在依靠addslashes防止SQL注入(包括我在内),我还是建...

PHP读MYSQL中文乱码的解决方法

打算切换某个网站的主机,没想到遇到Php和Mysql中文乱码的问题。   以前的国外主机用的Mysql是4.x系列的,感觉还比较好,都无论GBK和UTF-8都没有乱码,没想到新的主机的M...

PHP Mysql编程之高级技巧

笔者做了以下的尝试。 <?php  $data_time="1998-12-31 23:59:59";  $connect_id=mysql_connect...

PHP备份/还原MySQL数据库的代码

以下是代码: 一、备份数据库并下载到本地【db_backup.php】 复制代码 代码如下: <?php // 设置SQL文件保存文件名 $filename=date("Y-m-d...