0
<?php echo invoice_due_date($invoice); ?>

上記のコードは、dd/mm/yyyyとしてフォーマットされた日付を出力します。その日付を取得し、そこから x の日数を追加または削除して、結果を印刷する方法を探しています。私はPHPに関しては初心者なので、試したことはすべて失敗しました。前もって感謝します!

また、このコード スニペットは、サポートされなくなった「myclientbase」というプロジェクトのものです。

4

3 に答える 3

3

PHP5 にはDateTimeという便利なクラスがあります。

次のような文字列から初期化できます。

$date = DateTime::createFromFormat('d/m/Y', invoice_due_date($invoice));

次に、PHP 5.3.0 以降、このクラスには時間量を追加するメソッドがあります。

$date->add(new DateInterval('P10D'));

これにより、日付に 10 日が追加されます。http://php.net/manual/en/datetime.add.phpを参照してください。

于 2013-01-25T15:20:14.050 に答える
0

DateTime::add 関数を使用できます。完全な説明と例は、http://php.net/manual/en/datetime.add.phpにあります。

$invoice->add(new DateInterval('P20D'));

これにより、請求書の日付に 20 日が追加されます。$invoice変数をエコーアウトする前に、これを実行するだけです。

于 2013-01-25T15:19:41.813 に答える
0

strtotimeは、日付を時間値に変換し (スラッシュをダッシュ​​に置き換える必要があります)、同じ操作で日を追加できます。

strtotime(str_replace('/','-',invoice_due_date($invoice)) . ' + 1 day')

dateを使用して、日付を適切な表記に戻すことができます。

于 2013-01-25T15:26:58.250 に答える