MySQL TimeStamp To Date / Time PHP:总是1/1/1 01:00

时间:2013-06-04 15:46:18

标签: php mysql date timestamp jpgraph

我必须创建一个包含每行日期/时间的数组。 我使用以下代码。 “TIME_STAMP”是包含MySQL时间戳(默认为CURRENT_TIMESTAMP)的字段。

while ( $row = mysql_fetch_array($result) )
{
    $timestamp = strtotime($row["TIME_STAMP"]);
    $x[] = sprintf("%s, %s", date ('j/n', $timestamp), date('H:i', $timestamp));
}

如果我从mysql客户端发出SELECT *,一切正常:TIME STAMP是正确的:

2013-06-04 17:11:43

但当我将此数组传递给JpGraph(以制作水平轴)时,所有记录都显示为

1/1 01:00

图表的代码:

$graph = new Graph("1024", "800");
$graph->SetScale( 'textlin');
$graph->img-> SetMargin(60,40,40,110);
$graph->xaxis->SetTickLabels( $x );
$graph->xgrid->Show(true);

任何提示?

3 个答案:

答案 0 :(得分:1)

我的猜测是你正在处理的值是一个字符串,而不是一个实际的DateTime对象。在将其传递给下一步之前,您可能希望使用该字符串创建一个新的DateTime对象。

http://www.php.net/manual/en/function.date-create.php

答案 1 :(得分:1)

你有: $ graph-> SetScale(' textlin');

它应该是: $ graph-> SetScale(' datlin');

答案 2 :(得分:0)

固定

我的选择查询不包含“TIME_STAMP”字段;该图表稍后添加,但查询未使用JpGraph的新属性进行更新。

感谢任何人的帮助。