DateTime::modify
date_modify
(PHP 5 >= 5.2.0)
DateTime::modify -- date_modify — タイムスタンプを変更する
パラメータ
-
object -
手続き型のみ: date_create() が返す DateTime オブジェクト。 この関数は、このオブジェクトを変更します。
-
modify -
日付/時刻 文字列。有効な書式については 日付と時刻の書式 で説明しています。
返り値
メソッドチェインに使う DateTime オブジェクトを返します。失敗した場合に FALSE を返します。
変更履歴
| バージョン | 説明 |
|---|---|
| 5.3.6 | 日付/時刻の絶対指定も効果を及ぼすようになりました。 これまでは、相対指定部分だけを用いていました。 |
| 5.3.0 | 成功した場合の返り値が
NULL から DateTime に変更されました。 |
例
例1 DateTime::modify() の例
オブジェクト指向型
<?php
$date = new DateTime('2006-12-12');
$date->modify('+1 day');
echo $date->format('Y-m-d');
?>
手続き型
<?php
$date = date_create('2006-12-12');
date_modify($date, '+1 day');
echo date_format($date, 'Y-m-d');
?>
上の例の出力は以下となります。
2006-12-13
例2 月の加減算には注意
<?php
$date = new DateTime('2000-12-31');
$date->modify('+1 month');
echo $date->format('Y-m-d') . "\n";
$date->modify('+1 month');
echo $date->format('Y-m-d') . "\n";
?>
上の例の出力は以下となります。
2001-01-31 2001-03-03
参考
- strtotime() - 英文形式の日付を Unix タイムスタンプに変換する
- DateTime::add() - 年月日時分秒の値を DateTime オブジェクトに加える
- DateTime::sub() - 年月日時分秒の値を DateTime オブジェクトから引く
- DateTime::setDate() - 日付を設定する
- DateTime::setISODate() - ISO 日付を設定する
- DateTime::setTime() - 時刻を設定する
- DateTime::setTimestamp() - Unix タイムスタンプを用いて日付と時刻を設定する