日付(DateTime())のサンプル
DateTime()の各結果
ユニックスタイムから年月日を取得
年月日からユニックスタイムを取得
※「2026-01-09」のように「-」区切りで入力してください
ユニックスタイム
$date = new DateTime($rowAry);
echo $date->format('U');
| 元データ | 結果 |
| 2026/01/09 | 1767884400 |
| 2026-01-09 | 1767884400 |
| 01/09/2026 | 1767884400 |
| 2026/01/09 16:59:42 | 1767945582 |
| 2026/01/09T16:59:42.000+09:00 | 1767945582 |
書式変換
$date = new DateTime($rowAry);
echo $date->format('Y年m月d日 H時i分s秒');
| 元データ | 結果 |
| 2026/01/09 | 2026年01月09日 00時00分00秒 |
| 2026-01-09 | 2026年01月09日 00時00分00秒 |
| 01/09/2026 | 2026年01月09日 00時00分00秒 |
| 2026/01/09 16:59:42 | 2026年01月09日 16時59分42秒 |
| 2026/01/09T16:59:42.000+09:00 | 2026年01月09日 16時59分42秒 |
1秒後
$date = new DateTime($rowAry);
$date->modify('+1 second');
echo $date->format('Y/m/d/ H:i:s');
| 元データ | 結果 |
| 2026/01/09 | 2026/01/09/ 00:00:01 |
| 2026-01-09 | 2026/01/09/ 00:00:01 |
| 01/09/2026 | 2026/01/09/ 00:00:01 |
| 2026/01/09 16:59:42 | 2026/01/09/ 16:59:43 |
| 2026/01/09T16:59:42.000+09:00 | 2026/01/09/ 16:59:43 |
5日前
$date = new DateTime($rowAry);
$date->modify('-5 day');
echo $date->format('Y/m/d/ H:i:s');
| 元データ | 結果 |
| 2026/01/09 | 2026/01/04/ 00:00:00 |
| 2026-01-09 | 2026/01/04/ 00:00:00 |
| 01/09/2026 | 2026/01/04/ 00:00:00 |
| 2026/01/09 16:59:42 | 2026/01/04/ 16:59:42 |
| 2026/01/09T16:59:42.000+09:00 | 2026/01/04/ 16:59:42 |
差分
▼下準備
$d1 = new DateTIme('2018-08-15 11:00:00');
$d2 = new DateTime('2018-09-20 15:30:00');
・以下で使う書式の「%R」ってのが「+」「-」になる
・「%R」を「%r」と小文字にすると「+」は省略される
$d1(8/15)から$d2(9/20)
$diff = $d1->diff($d2);
echo $diff->format('%R%a'); // %R:「+」は省略しない
echo $diff->format('%r%a'); // %r:「+」は省略
// 結果:+36、36
$d2(9/20)から$d1(8/15)
$diff = $d2->diff($d1);
echo $diff->format('%R%a'); // %R:「+」は省略しない
echo $diff->format('%r%a'); // %r:「+」は省略だけど・・・「-」は関係なし。
// 結果:-36、-36
$d1(8/15)から$d2(9/20)で絶対値
$diff = $d1->diff($d2, true);
echo $diff->format('%R%a');
// 結果:+36
$d2(9/20)から$d1(8/15)で絶対値
$diff = $d2->diff($d1, true);
echo $diff->format('%R%a');
// 結果:+36
$d1(8/15)から$d2(9/20)で書式変更
$diff = $d1->diff($d2);
echo $diff->format('%R%Y年%mヶ月%d日 %h時間%i分%s秒');
// 結果:+00年1ヶ月5日 4時間30分0秒
$d1(8/15)から$d2(9/20)の差分を秒で欲しい
「diff()」は日数になるらしいので、手動で計算。
$diff = $d2->format('U') - $d1->format('U');
echo number_format($diff) . '秒';
// 結果:3,126,600秒
$d2(9/20)から$d1(8/15)の差分を秒で欲しい
「diff()」は日数になるらしいので、手動で計算。
$diff = $d1->format('U') - $d2->format('U');
echo number_format($diff) . '秒';
// 結果:-3,126,600秒
関連項目
・
PHP 日付(DateTime())