2

特定の日付 (2012-12 など) が現在の日付より古いか新しいかを確認したい。

私は古い月をチェックする方法を知っています

if(strtotime('2012-12')<strtotime('-1 Months')){
   echo "true"; // got TRUE ... correct!
} else {
    echo "false";
}

しかし、新しいものはどうですか?

if(strtotime('2013-02')>strtotime('1 Months')){
   echo "true";
} else {
    echo "false"; // got FALSE ... incorrect !
}

新しい日付を確認すると、間違った結果が得られました。

4

3 に答える 3

7

strtotime関数に+を追加するのを忘れました。

if(strtotime('2013-02')>strtotime('+1 Months')){
   echo "true";
} else {
    echo "false";
}

更新: あなたの質問には奇妙なことがいくつかあります。たとえば、2013-02は日付ではなく、月への参照です。これが月の最初の日であるかどうかを確認する場合は、完全な日付表記2012-02-01を使用してください。現在の日付を月に入れるかどうかを確認する場合は、現在の月をdate("n")(1〜12を返します)で確認します。これを特定の月と比較します。次に例を示します。

$date = "2012/02/01";

if(date("n", strtotime($date)) != date("n")) {
 echo 'not current month';
}

これが現在の日付ではないかどうかを確認したい場合は、次のようにします。

$date = "2012/02/01";

if(date('d-m-Y', strtotime($date)) != date('d-m-Y')) {
 echo 'not current day';
}
于 2013-01-09T11:10:30.223 に答える