DateTime class
DateTime class သည် OOP စတိုင်ဖြင့် ရက်စွဲနှင့် အချိန်များကို အလုပ်လုပ်ရန် အဓိကကိရိယာတစ်ခုဖြစ်ပါသည်။ ၎င်းသည် ရက်စွဲ/အချိန် အရာဝတ္ထုများကို ဖန်တီးခြင်း၊ ၎င်းတို့ကို ပြုပြင်မွမ်းမံခြင်းနှင့် ရလဒ်ထုတ်ကို ပုံစံချခြင်းတို့ကို ခွင့်ပြုပါသည်။
လက်ရှိအချိန်
လက်ရှိ ရက်စွဲနှင့် အချိန်ဖြင့် DateTime အရာဝတ္ထုတစ်ခုကို ဖန်တီးကြပါစို့။
<?php
$date = new DateTime();
?>
သတ်မှတ်ထားသော ရက်စွဲ
သတ်မှတ်ထားသော ရက်စွဲဖြင့် DateTime အရာဝတ္ထုတစ်ခုကို ဖန်တီးကြပါစို့။
<?php
$date = new DateTime('2025-12-31');
?>
သတ်မှတ်ထားသော ရက်စွဲနှင့် အချိန်
သတ်မှတ်ထားသော ရက်စွဲနှင့် အချိန်ဖြင့် DateTime အရာဝတ္ထုတစ်ခုကို ဖန်တီးကြပါစို့။
<?php
$date = new DateTime('2025-12-31 12:59:59');
?>
ရလဒ်ထုတ်ကို ပုံစံချခြင်း
ဖန်တီးထားသော ရက်စွဲကို format method ကို အသုံးပြု၍ သတ်မှတ်ထားသော ပုံစံဖြင့် ထုတ်ပြနိုင်ပါသည်။
လက်ရှိအချိန်အတွက် ဤသို့လုပ်ဆောင်ကြည့်ပါ။
<?php
$date = new DateTime();
echo $date->format('Y-m-d H:i:s');
?>
ရလဒ် (run သည့်အချိန်ပေါ်မူတည်၍ ပြောင်းလဲနိုင်သည်)။
'2025-11-15 14:25:00'
သတ်မှတ်ထားသော ရက်စွဲကို ပုံစံချခြင်း
သတ်မှတ်ထားသော ရက်စွဲကို ပုံစံချကြည့်ပါ။
<?php
$date = new DateTime('2025-12-31');
echo $date->format('d.m.Y');
?>
ကုဒ် run ပြီးနောက်ရလဒ်။
'31.12.2025'
အချိန်ကွာခြားချက် ထည့်သွင်းခြင်း
ရက်စွဲသို့ အချိန်ကွာခြားချက် ထည့်သွင်းခြင်းကို
add method မှတစ်ဆင့် လုပ်ဆောင်ပါသည်။
<?php
$date = new DateTime('2025-05-15');
$interval = new DateInterval('P10D'); // ရက် ၁၀ ရက်
$date->add($interval);
echo $date->format('Y-m-d');
?>
ကုဒ် run ပြီးနောက်ရလဒ်။
'2025-05-25'
အချိန်ကွာခြားချက် နုတ်ယူခြင်း
ရက်စွဲမှ အချိန်ကွာခြားချက် နုတ်ယူခြင်းကို
sub method မှတစ်ဆင့် လုပ်ဆောင်ပါသည်။
<?php
$date = new DateTime('2025-05-15');
$interval = new DateInterval('P1M2D'); // တစ်လနှင့် ၂ ရက်
$date->sub($interval);
echo $date->format('Y-m-d');
?>
ကုဒ် run ပြီးနောက်ရလဒ်။
'2025-04-13'
ရက်စွဲအသစ် သတ်မှတ်ခြင်း
DateTime အရာဝတ္ထုအတွက် ရက်စွဲအသစ်တစ်ခုကို သတ်မှတ်နိုင်ပါသည်။
ဤသို့လုပ်ဆောင်ရန် setDate method ကို အသုံးပြုပါသည်။
<?php
$date = new DateTime();
$date->setDate(2025, 12, 31);
echo $date->format('Y-m-d');
?>
ကုဒ် run ပြီးနောက်ရလဒ်။
'2025-12-31'
အချိန်သတ်မှတ်ခြင်း
DateTime အရာဝတ္ထုအတွက် အချိန်အသစ်တစ်ခုကို သတ်မှတ်နိုင်ပါသည်။
ဤသို့လုပ်ဆောင်ရန် setTime method ကို အသုံးပြုပါသည်။
<?php
$date = new DateTime();
$date->setTime(15, 30, 0);
echo $date->format('H:i:s');
?>
ကုဒ် run ပြီးနောက်ရလဒ်။
'15:30:00'
ရက်စွဲများကို နှိုင်းယှဉ်ခြင်း
ရက်စွဲများပါသော အရာဝတ္ထုများကို နှိုင်းယှဉ်နိုင်ပါသည်။
<?php
$date1 = new DateTime('2025-01-01');
$date2 = new DateTime('2025-02-01');
if ($date1 < $date2) {
echo '+++';
} else {
echo '---';
}
?>
ရက်စွဲများကြား ကွာခြားချက်
diff method ကို အသုံးပြု၍ ရက်စွဲများကြား ကွာခြားချက်ကို တွက်ချက်နိုင်ပါသည်။ ကွာခြားချက်ကို
DateInterval အရာဝတ္ထုပုံစံဖြင့် ပြန်ပေးပါသည်။
<?php
$date1 = new DateTime('2023-01-01');
$date2 = new DateTime('2023-02-15');
$interval = $date1->diff($date2);
echo $interval->format('%m months %d days');
?>
ကုဒ် run ပြီးနောက်ရလဒ်။
'1 months 14 days'
အချိန်ဇုန်
DateTime အရာဝတ္ထု ဖန်တီးသည့်အခါ
အချိန်ဇုန်ကို သတ်မှတ်ပေးနိုင်ပါသည်။
<?php
$timeZone = new DateTimeZone('Europe/Moscow');
$date = new DateTime('2025-12-31 23:59:59', $timeZone);
echo $date->format('Y-m-d H:i:s e');
?>
ကုဒ် run ပြီးနောက်ရလဒ်။
'2025-12-31 23:59:59 Europe/Moscow'
ဤအကြောင်းကိုလည်း ကြည့်ပါ
-
DateTimeImmutableclass,
အပြောင်းအလဲမရှိသော ရက်စွဲကို ဖန်တီးပေးသည့် class -
DateIntervalclass,
အချိန်ကွာခြားချက်ကို သတ်မှတ်ပေးသည့် class -
DateTimeZoneclass,
အချိန်ဇုန်ကို သတ်မှတ်ပေးသည့် class