1

現在、現在のプロジェクトのパッケージマネージャーに取り組んでおり、パッケージのサブスクリプション日とパッケージの有効期限を追加する必要があります。

私はphp関数を使用していますdate("Y-m-d H:i:s")

$package_subscription_start_date = date("Y-m-d H:i:s");

今ここに私の要件があります:私は1日、2日、5日、1週間、4週間、12週間、1ヶ月、6ヶ月、9ヶ月、1年、2年、5年、10などのパッケージを持っている必要があります年。

これらの値を追加して、mysqlに挿入するためのパッケージの有効期限を計算するにはどうすればよいですか?

$package_expiry_date = date("Y-m-d H:i:s") + 1 day;
$package_expiry_date = date("Y-m-d H:i:s") + 5 days;
$package_expiry_date = date("Y-m-d H:i:s") + 1 week;
$package_expiry_date = date("Y-m-d H:i:s") + 4 weeks;
$package_expiry_date = date("Y-m-d H:i:s") + 2 months;

$package_expiry_date = date("Y-m-d H:i:s") + 2 years;

最後に、有効な日付やうるう年など、他の日付の問題に対処する必要があります。また、mysql / sqlクエリを使用せずに、phpレベルでこれを実行する必要があります。

この方向での助けに感謝します。

4

4 に答える 4

4

何かのようなもの

$date=date('Y-m-d H:i:s', strtotime('+1 day'));
$date=date('Y-m-d H:i:s', strtotime('+5 days'));
$date=date('Y-m-d H:i:s', strtotime('+1 week'));
$date=date('Y-m-d H:i:s', strtotime('+4 weeks'));
$date=date('Y-m-d H:i:s', strtotime('+2 months'));
$date=date('Y-m-d H:i:s', strtotime('+2 years'));
于 2012-10-20T12:53:53.187 に答える
3

PHP でstrtotime()コマンドを試しましたか?

echo $expires = strtotime(date("Y-m-d H:i:s")." + 1 day");
echo date("Y-m-d H:i:s", $expires);

次の出力が得られます

135082420020
12-10-21 08:56:40
于 2012-10-20T12:57:26.463 に答える
1

php DateTimeオブジェクトを見てください。

たとえば、日付に時間を追加するには:

//Get the current date
$date = new DateTime();

//Add 1 day
$date->modify('+1 Day');

//Output in Y-m-d format
echo $date->format('Y-m-d');

他にも便利な機能がいっぱい

于 2012-10-20T12:34:31.147 に答える