0

次の日付 (5-1 など) を見つけるための PHP スクリプトを作成しようとしています。しかし、それを 5-2 に入れるとstrtotime()、今年の日付になります。可能な限り次の日付を常に返すようにしたいだけです。どうすればこれを機能させることができますか?それが役立つ場合、私は codeigniter を使用しています。

編集:謙虚な魂が同じ問題に遭遇した場合、私が思いついたコードを次に示します。

if (strtotime($date) < strtotime("now")) {
    $realseconds = strtotime($date) + 31556926; //add one year in seconds
} else {
    $realseconds = strtotime($date);
}
4

4 に答える 4

2

返された日付が現在の時刻より前かどうかを確認し、そうであれば 1 年を追加します。

の 2 番目のパラメーターとして翌年の日付を渡すこともできますstrtotime

于 2009-12-24T02:00:24.353 に答える
1

またはとは何5-1ですか5-2

代わりにこれを試してください:

strtotime('next October');
于 2009-12-24T01:50:21.173 に答える
1

5-2 が 2 月 5 日を意味すると仮定すると、次のようになります。

strtotime("february 5 +1 year")
于 2009-12-24T02:05:36.543 に答える
0

コード:

$x=strtotime($inputString);
$YEAR=60*60*24*30*12;
while($x<$time()) $x+=$YEAR;

基本的に、strtotime によって返された日付が過去の場合は 1 年追加されます... while() を使用したため、そのように明示的に指定されていても、過去の日付を返すことはありません。

于 2009-12-24T12:55:23.803 に答える