使用MySQL显示表状态的php日期格式
可能遗漏了一些简单的东西:使用MySQL显示表状态的php日期格式,php,mysql,date,format,Php,Mysql,Date,Format,可能遗漏了一些简单的东西: <?php $con=mysql_connect('localhost','xxx','xxx'); $db=mysql_select_db('xxx'); $sql = mysql_query("SHOW TABLE STATUS WHERE `name`=\"my_table\""); $foo=mysql_fetch_array($sql); return $foo['Update_time']; // returns 2010-03-31 16
<?php
$con=mysql_connect('localhost','xxx','xxx');
$db=mysql_select_db('xxx');
$sql = mysql_query("SHOW TABLE STATUS WHERE `name`=\"my_table\"");
$foo=mysql_fetch_array($sql);
return $foo['Update_time'];
// returns 2010-03-31 16:51:06
?>
但这也带来了:
1970年1月1日星期四@01:33:30
大概是因为date()需要一个时间戳
谢谢..我确信这很明显,但我的脑子一片空白函数期望的是一个作为其第二个参数的字符串,而不是一个包含日期的字符串
这意味着您必须将该字符串转换为时间戳——这可以使用以下函数完成:
$ts = strtotime($foo['Update_time']);
echo date('l jS F Y @ H:i:s', $ts);
注1:
YYYY-MM-DD HH-MM-SS
格式为strotime
所理解;当处理来自MySQL的日期时,这通常很有用
注2:使用对时间戳起作用的date
和strotime
(表示为32位整数,计算自1970-01-01
以来的秒数),您将被限制在1970到2038之间的日期;如果您需要处理超出该范围的日期,则必须使用。该函数希望使用一个作为其第二个参数,而不是包含日期的字符串
这意味着您必须将该字符串转换为时间戳——这可以使用以下函数完成:
$ts = strtotime($foo['Update_time']);
echo date('l jS F Y @ H:i:s', $ts);
注1:
YYYY-MM-DD HH-MM-SS
格式为strotime
所理解;当处理来自MySQL的日期时,这通常很有用
注2:使用对时间戳起作用的date
和strotime
(表示为32位整数,计算自1970-01-01
以来的秒数),您将被限制在1970到2038之间的日期;如果您需要处理超出该范围的日期,则必须使用。这应该可以:
date('l jS F Y @ H:i:s', strtotime($foo['Update_time']));
date('l jS F Y @ H:i:s', strtotime($foo['Update_time']));
将获取一个日期字符串并将其转换为时间戳,然后可以将其与date()一起使用
date('l jS F Y @ H:i:s', strtotime($foo['Update_time']));
date('l jS F Y @ H:i:s', strtotime($foo['Update_time']));
将获取一个日期字符串并将其转换为时间戳,然后您可以将其与date()
一起使用。您需要使用strotime
函数:
您需要使用strotime
功能: