PHPとエコーの新しい日付の2つの日付を比較するにはどうすればよいですか?phpで2つの日付を比較し、新しい日付をエコーする方法は?
私の日付はdate("F j, Y, g:i a");
のフォーマットです。August 12, 2011, 9:45 am
とします。
私の日付は次のとおりである:何の価値行われている更新した場合
- 日1
$created
- 日付は2
$updated
/任意の提案は大歓迎0000-00-00 00:00:00
ではありません。
PHPとエコーの新しい日付の2つの日付を比較するにはどうすればよいですか?phpで2つの日付を比較し、新しい日付をエコーする方法は?
私の日付はdate("F j, Y, g:i a");
のフォーマットです。August 12, 2011, 9:45 am
とします。
私の日付は次のとおりである:何の価値行われている更新した場合
$created
$updated
/任意の提案は大歓迎0000-00-00 00:00:00
ではありません。
$date1 = new DateTime("August 12, 2011, 9:45 am");
$date2 = new DateTime("August 12, 2011, 10:45 am");
$never_date = ($date1<$date2)?$date1:$date2;
echo $never_date->format("F j, Y, g:i a");
しかし、ノート、0000-00-00 00:00:00
はDateTime()
の有効な入力ですが、期待通りに動作しないこと。 -0001-11-30 00:00:00
(Win7 x64では少なくともPHP 5.3-VC9-nts)になります。
更新:私は0000-00-00 00:00:00
DEFAULT 0000-00-00 00:00:00
を削除することworkarouningの2つのオプションを参照してください。そう$created
を返す場合チェック$updated == ''
場合(空の文字列)と::
$updated == '0000-00-00 00:00:00'
もしそうであれば、ちょうど$created
戻る if ($updated=='0000-00-00 00:00:00' || $updated=='')
$never_date = $created;
else
$never_date = ($created<$updated)?$created:$updated;
私はそれが0000-00-00 00:00:00
を表示する権利行動だということを疑います決して更新されなかったレコードのために。
は、タイムスタンプに日付を変換します
if (strtotime($created) > strtotime($updated))
{
// ...
}
else
{
// ...
}
重複:http://stackoverflow.com/questions/2113940/php-compare-date – JMax