降順で並べ替えられた文字列形式の日付で埋められた日付の配列があり、30 日ごとに異なります。31 日の月は既に 30 日の月に変換されています。
$monthdates = array('2001-29-05','2001-29-06','2001-29-07','2001-29-08','2001-29-09','2001-29-10');
次のように、上記の配列の日付内にある文字列形式の日を降順で含む別の配列もあります。
$customdates = array('2001-30-05','2001-31-05','2001-01-06','2001-02-06',2001-03-06);
...この配列の最後の値が「2001-29-11」であるとします。
私が欲しいのは、配列をトラバースして $monthdates の現在の日を $customdates 配列の日と比較し、$customdates 配列の日がより新しい場合は何かを (何でも) エコーするためのループ内 (またはおそらく 2 つ) です。 $monthdates 配列内の日よりちょうど 20 日です。
例: $customdates 配列の '2001-30-05' は、$monthdates 配列の '2001-29-05' よりも新しいです。その場合、この 2 日間の数値の差を把握し、それが 20 日を超える場合 (互いに 20 日以上異なる場合)、ランダムな文字列を出力し、$ 内の次の値ごとに上記の比較を続けます。 customdates 配列。
$monthdates 配列に「一致」が見つかった場合は、現在の値の比較を停止し、次の値に進みます。この例では、'2001-30-05' と '2001-29-05' の違いは 1 日だけです。$monthdates 配列のすべての値に一致するものが見つかったら、次の値を取得します。