1

有人可以帮我比较两次并找出哪个比另一个少。更少我的意思是哪个时间比另一个时间长。

从数据库中检索时间:

$time1 = strtotime($row[0]);
$time2 = strtotime($row2[0]);
4

6 回答 6

3

如果您只想知道哪个日期更早,您可以简单地比较它们。

这是 PHP 手册中的一个示例:

$d1 = new DateTime('1492-01-01');

$d2 = new DateTime('1492-12-31');


var_dump($d1 < $d2);

var_dump($d1 > $d2);

var_dump($d1 == $d2);

?>

结果 :

bool(true)

bool(false)

bool(false)
于 2013-04-12T07:50:54.230 回答
0

您必须将输入日期转换为时间戳,然后从另一个中减去一个。

$timestampA = 1221672010;
$timestampB = 1221671010;
$diff       = $timestampA - $timestampB;

if ( $diff > 0 ) {
  // $timestampA date is after $timestampB date
} else if ( $diff < 0 ) {
  // $timestampA date is before $timestampB date
} else {
  // dates are equal
}

要将字符串日期转换为时间戳,您可以使用strtotime函数。

于 2013-04-12T07:50:34.810 回答
0

我相信 2 次是指 2 个日期。您始终可以将它们转换为时间戳,然后它们会比较这两个数字。

为此,您可以使用 strtotime 功能

于 2013-04-12T07:51:01.560 回答
0

如果您的意思是 time() 时间数据使用 min 函数: http: //fr.php.net/min

否则,http ://php.net/manual/en/datetime.diff.php

$time1 = time();
$time2 = time()-3600;
var_dump(min($time1, $time2));

或者

$datetime1 = date_create('2009-10-11');
$datetime2 = date_create('2009-10-13');
$interval = date_diff($datetime1, $datetime2);
echo $interval->format('%R%a days')
于 2013-04-12T07:52:51.973 回答
0

您可以使用time()函数返回以自 Unix 纪元(格林威治标准时间 1970 年 1 月 1 日 00:00:00)以来的秒数测量的当前时间

或者,如果您有字符串格式的日期时间,则可以在比较之前使用strtotime()对其进行转换。

最小的数字是最老的时间!

于 2013-04-12T07:54:41.290 回答
0
$time = strtotime(min(array($row[0], $row2[0])));

给你最早的时间。

于 2013-04-12T08:05:26.183 回答