1

誰かが私を2回比較して、どちらが他のものより少ないかを知るのを手伝ってもらえますか. 少ないとは、どちらが他のものよりも古いことを意味します。

時刻はデータベースから取得されます:

$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
$time = strtotime(min(array($row[0], $row2[0])));

最も早い時間を提供します。

于 2013-04-12T08:05:26.183 に答える
0

2 回とは、2 つの日付を意味すると思います。いつでもそれらをタイムスタンプに変換して、2 つの数値を比較できます。

そのために strtotime 関数を使用できます

于 2013-04-12T07:51:01.560 に答える
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

時間データの 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 GMT) からの秒数で測定された現在の時刻が返されます。

または、日時が文字列形式の場合は、strtotime()を使用して比較前に変換できます。

最小の数字が最も古い時間です!

于 2013-04-12T07:54:41.290 に答える