我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

php数据库日期格式化,mysql数据库日期格式转换

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

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

创新互联是一家专业提供磐石企业网站建设,专注与做网站、成都做网站、HTML5建站、小程序制作等业务。10年已为磐石众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。

一、在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日期格式化

?php

echo date('Y-m-d', strtotime('20150203'));

strtotime 这个函数用来处理时间很好用,下面几个例子。

一天前   strtotime('-1 day');

七天前   strtotime('-7 days');

另外这个strtotime 对其他时间格式识别也很好用  yyyy/mm/dd   yyyymmdd 等。

配合 date 就可以格式你想要的日期,

你问的这个就是  yyyymmdd 格式化为  yyyy-mm-dd。

=======

另外附一个该函数的手册的链接,里面还有其他好多用法:

php时间格式怎么转换?

php日期格式转换总结:

?php

//将当前时间转换成yyyy-mm-dd格式串,再转换成日期格式,绕了一圈哈

echo strtotime(date('Y-m-d',time()).' 00:00:00');

//将GNU 日期输入格式的字符转换成时间

echo strtotime('now');

//标准的字符串转换成时间

$t = '2012-9-10 15:18:06';

$time = strtotime($t);

//将时间转换成日期字符yyyymmdd,再转换成整型格式

$d = intval(date('Ymd',$time));

echo '付款时间:'.$d;

?php

header("Content-type: text/html; charset=utf-8");

$txDate = '2016-06-16';

$dateTime1 = strtotime($txDate);  //int 1466028000 将英文文本日期时间解析为 Unix 时间戳:

$dateTime2= date("Y-m-d H:i:s",$dateTime1); //string '2016-06-16 00:00:00'

(length=19)  Date() 函数把时间戳格式化为更易读的日期和时间。

//拼接今日最后时间2016-06-16 23:59:59

$dateTime= date("Y-m-d H:i:s",strtotime(date("Y-m-d",strtotime($dateTime2))."+ 23 hours 59 minutes  59 seconds ")); //string '2016-06-16 23:59:59' (length=19)

$sql = select * form `vvt_user` where userid = 100 AND date_time = $dateTime2 AND date_time = $dateTime;?

php 时间格式化

函数名:date_format

参数: $string 时间源,可以是2006-04-24 09:56:07这种格式,$format要格式化的形式,如%Y年%m月%d日%H时%M分%S秒看需要删改

示例:?php

echo date_format($rs['time'],'%Y年%m月%d日%H时%M分%S秒');

?

function date_format($string, $format="%b %e, %Y", $default_date=null)

{

if (substr(php_OS,0,3) == 'WIN') {

$_win_from = array ('%e', '%T', '%D');

$_win_to = array ('%#d', '%H:%M:%S', '%m/%d/%y');

$format = str_replace($_win_from, $_win_to, $format);

}

if($string != '') {

return strftime($format, smarty_make_timestamp($string));

} elseif (isset($default_date) $default_date != '') {

return strftime($format, smarty_make_timestamp($default_date));

} else {

return;

}

} function smarty_make_timestamp($string)

{

if(empty($string)) {

$string = "now";

}

$time = strtotime($string);

if (is_numeric($time) $time != -1)

return $time; // is mysql timestamp format of YYYYMMDDHHMMSS?

if (PReg_match('/^\d{14}$/', $string)) {

$time = mktime(substr($string,8,2),substr($string,10,2),substr($string,12,2),

substr($string,4,2),substr($string,6,2),substr($string,0,4)); return $time;

} // couldn't recognize it, try to return a time

$time = (int) $string;

if ($time 0)

return $time;

else

return time();


网站栏目:php数据库日期格式化,mysql数据库日期格式转换
分享链接:http://mswzjz.cn/article/hopccs.html

其他资讯