2011-09-28 42 views
0

如何解析此数据?
这是来自我的数据库解析php数据以获取单个数据

2011-09-27 13:14:11 

我想只得到了13 14和11分别日期时间。 输出应该是:

13 
14 
11 

请注意,这是一个动态值 我也能拿具有此值的日期时间:2011-09-27 一时12分00秒

如何我会那样做吗?

任何帮助将不胜感激。

谢谢!

+0

你需要解析sql查询吗? – tttony

+0

看看我的解决方案 –

回答

0

比方说,你已经分配2011-09-27 13:14:11从数据库表到一个名为$datetime

$result = strtotime($datetime); 
$minute = date("i", $result); 
$second = date("s",$result); 
$hour = date("H", $result); 

在你的情况$hour变量将是13,$minute将是14,$second将是11 More detailed in PHP documentation

BTW

如果你想要得到单独的年份,月份,日期,使用下面的一段代码

$year = date("Y", $result); 
$month = date("m",$result); 
$day = date("d", $result); 
1

可以使用DateTime类来做到这一点

$date = new DateTime('2011-09-27 13:14:11'); 
printf("%s <br />", $date->format('H')); 
printf("%s <br />", $date->format('i')); 
printf("%s <br />", $date->format('s')); 
// Outputs: 
// 13 
// 14 
// 11 
+2

为什么用这种方式downvote? – Stoosh

0

如果你有机会到SQL查询中,你可以简单地做:

SELECT 
    HOUR(`dateTimeColumn`) AS `hours`, 
    MINUTE(`dateTimeColumn`) AS `minutes`, 
    SECOND(`dateTimeColumn`) AS `seconds`, 
    # etc... 
FROM 
    `yourTable` 
# etc... 

...从而让MySQL进行解析,并使用类似于PHP的方式访问它们:

$row[ 'hours' ]; 
$row[ 'minutes' ]; 
$row[ 'seconds' ];