在PHP中查找至少两个给定时间

时间:2013-04-12 07:46:39

标签: php

有人可以帮助我比较两次,发现哪一个比另一个少。减去我的意思是哪个人比其他人有更长的时间。

从数据库中检索时间:

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

6 个答案:

答案 0 :(得分:2)

如果您只想知道更早的日期,可以直接比较它们。

以下是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)

答案 1 :(得分: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函数。

答案 2 :(得分:0)

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

为此你可以使用strtotime功能

答案 3 :(得分:0)

如果你的意思是时间()数据使用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')

答案 4 :(得分:0)

您可以使用time()函数返回自Unix Epoch(1970年1月1日00:00:00 GMT)以来的秒数测量的当前时间

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

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

答案 5 :(得分:0)

$time = strtotime(min(array($row[0], $row2[0])));

给你最早的时间。