လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP display အချိန်သည်အမြဲတမ်းမှားပါသလား။ Ini_set နှင့်အတူအချိန်ဇုန်များကိုချိန်ညှိခြင်းအတွက်လက်တွေ့လုပ်ဆောင်မှုလမ်းညွှန်

PHP display အချိန်သည်အမြဲတမ်းမှားပါသလား။ Ini_set နှင့်အတူအချိန်ဇုန်များကိုချိန်ညှိခြင်းအတွက်လက်တွေ့လုပ်ဆောင်မှုလမ်းညွှန်

gitbox 2025-09-28

1 ။ PHP သည်အဘယ်ကြောင့်မှားယွင်းသောအချိန်ကိုအမြဲတမ်းဖော်ပြသနည်း။

PHP ၏ပုံမှန်အချိန်ဇုန်ချိန်ညှိခြင်းသည်များသောအားဖြင့် UTC ဖြစ်သည်။ ဤအချိန်ဇုန်သည်ကမ္ဘာလုံးဆိုင်ရာအချိန်စံနှုန်းများကိုထောက်ပံ့ရန်စီစဉ်ထားသည်။ သို့သော် applications များအထူးသဖြင့်တိကျသောဒေသများရှိသုံးစွဲသူများကိုပစ်မှတ်ထားသောအသုံးပြုသူများအတွက် UTC ကိုအသုံးပြုခြင်းသည်မသင့်လျော်ပါ။ ဥပမာအားဖြင့်, သင်သည်တရုတ် (UTC + 8) တွင်လျှောက်လွှာတစ်ခုတည်ဆောက်ပါကဆာဗာကို UTC သို့သတ်မှတ်ပါကပြသမှုအချိန်တွင်အမှားတစ်ခုရှိလိမ့်မည်။

များသောအားဖြင့် PHP သည်ထုတ်လုပ်သည့် အချိန် () function ကိုအသုံးပြုသည်။ အကယ်. အချိန်ဇုန်ကိုမှားယွင်းစွာသတ်မှတ်ထားပါကအချိန်ကိုမျှော်လင့်ထားသည့်အတိုင်းဖြစ်လိမ့်မည်မဟုတ်ပေ။

ဥပမာ -

 <span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">date</span></span><span>(</span><span><span class="hljs-string">'Y-m-d H:i:s'</span></span><span>);
</span></span>

အချိန်ဇုန်ကိုမှန်ကန်စွာမသတ်မှတ်ထားပါကဤ output သည်မျှော်လင့်ထားသည့်အတိုင်းမဖြစ်နိုင်ပါ။

2 ။ အချိန်ဇယားကို Ini_set မှတဆင့်သတ်မှတ်ရန်ဘယ်လိုလဲ။

အချိန်ဇုန်သတ်မှတ်ရန် ini_set () ကို သုံးပါ

Ini_set () သည် PHP တွင်အလွန်လက်တွေ့ကျသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ ပရိုဂရမ်သည်အစဉ်အလာလည်ပတ်သောအခါသင် Ini_set () ကို သုံးနိုင်သည်။

အချိန်ဇုန်ချိန်ညှိခြင်းအတွက် syntax:

 <span><span><span class="hljs-title function_ invoke__">ini_set</span></span><span>(</span><span><span class="hljs-string">'date.timezone'</span></span><span>, </span><span><span class="hljs-string">'Asia/Shanghai'</span></span><span>);
</span></span>

DABIMEZONTIZONT သည် အချိန်ဇုန်တစ်ခုဖြစ်သော PHP configuration file တစ်ခုတွင်ညွှန်ကြားချက်ဖြစ်သည်။ အချိန်ကာလဇုန်ကို ini_set မှတဆင့်ပြုပြင်ပြီးနောက် PHP သည်သတ်မှတ်ထားသောအချိန်ဇုန်အရအချိန်ကိုလက်ရှိ script တွင်ဖော်ပြလိမ့်မည်။

ဘုံအချိန်တိုင်းဇုန်ဥပမာများ:

  • အာရှ / ရှန်ဟိုင်း (China Standard Time)

  • America / New_york (နယူးယောက်အချိန်ဇုန်, USA)

  • ဥရောပ / လန်ဒန် (လန်ဒန်အချိန်)

  • အာရှ / တိုကျို (တိုကျိုအချိန်)

ဥပမာ - အချိန်ကာလဇုန်ရှန်ဟိုင်းကိုသတ်မှတ်ပါ

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// အချိန်ဇုန်ကိုရှန်ဟိုင်းကိုသတ်မှတ်ပါ</span></span><span>
</span><span><span class="hljs-title function_ invoke__">ini_set</span></span><span>(</span><span><span class="hljs-string">'date.timezone'</span></span><span>, </span><span><span class="hljs-string">'Asia/Shanghai'</span></span><span>);

</span><span><span class="hljs-comment">// output ကိုလက်ရှိအချိန်</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">date</span></span><span>(</span><span><span class="hljs-string">'Y-m-d H:i:s'</span></span><span>);
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

အထက်ပါကုဒ်သည်ရှန်ဟိုင်းအချိန်ဇုန်အရလက်ရှိအချိန်တွင်လက်ရှိအချိန်တွင်ပြလိမ့်မည်။

3 ။ လက်ရှိအချိန်ဇုန်ချိန်ညှိချက်များကိုမည်သို့ကြည့်ရှုရန်နည်း။

လက်ရှိ PHP Schiiguration Time Zone ကိုကြည့်ရှုရန် Day_Default_Timezone_get () function ကိုသုံးနိုင်သည်။

ဥပမာ -

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">date_default_timezone_get</span></span><span>();
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

အကယ်. PHP configuration သည်အချိန်ဇုန်ကိုအတိအလင်းမသတ်မှတ်ပါကပုံမှန်ပြန်လာသည့်အချိန်ဇုန်သည်များသောအားဖြင့် UTC ဖြစ်သည်။

4 ။ မကြာခဏမေးသောမေးခွန်းများနှင့်ဖြေရှင်းနည်းများ

မေးခွန်း 1: Ini_set () သည်မမှန်ကန်ပါ

တစ်ခါတစ်ရံတွင်အချိန်ဇုန်ကိုသတ်မှတ်ရန်အတွက် Ini_set () ကို အသုံးပြုခြင်းသည်အချိန်ဇုန်ကိုသတ်မှတ်ရန်မထင်ရ, ပုံမှန်အချိန်ဇုန်ကို php.ini တွင်သတ်မှတ်ထားခြင်းမရှိသောကြောင့်အချို့သောပတ်ဝန်းကျင်တွင်ပြန်လည်ရေးသား။ မရပါ။ အချိန်ဇုန်ချိန်ညှိချက်များအကျိုးသက်ရောက်စေရန်သေချာစေရန်အောက်ပါနည်းလမ်းများကိုသင်ကြိုးစားနိုင်သည်။

  1. Php.ini တွင် ရက်စွဲပါနာရီကို မသတ်မှတ်နိုင်ကြောင်းသေချာပါစေ။

  2. ဆက်စပ်သောသတိပေးချက်များသို့မဟုတ်အမှားများရှိမရှိစစ်ဆေးရန် PHP အမှားမှတ်တမ်းကိုစစ်ဆေးပါ။

မေးခွန်း 2 - Multi-Time Multi-Time Zone Support

သင်၏လျှောက်လွှာသည်အချိန်ဇုန်များစွာရှိသောအသုံးပြုသူများပါ 0 င်ပါကအချိန်ဇယားများ၌အချိန်ဇယားဆွဲရန် Datetime Class နှင့် Datetimezone အတန်းကိုအသုံးပြုရန်စဉ်းစားနိုင်သည်။ ၎င်းသည် ရက်စွဲ () function ကိုအသုံးပြုခြင်းထက် ပို. ပြောင်းလွယ်ပြင်လွယ်သည်။

ဥပမာ - အချိန်ဇုန်များကိုကိုင်တွယ်ရန် Datetime အတန်းကိုသုံးပါ

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// a DateTime ကန့်ကွက်</span></span><span>
</span><span><span class="hljs-variable">$date</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title class_">DateTime</span></span><span>(</span><span><span class="hljs-string">'now'</span></span><span>, </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title class_">DateTimeZone</span></span><span>(</span><span><span class="hljs-string">'Asia/Shanghai'</span></span><span>));

</span><span><span class="hljs-comment">// Shanghai Time ကိုတင်ပို့ပါ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$date</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">format</span></span><span>(</span><span><span class="hljs-string">'Y-m-d H:i:s'</span></span><span>);
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

5 ။ အကျဉ်းချုပ်

PHP အစီအစဉ်များသည်တိကျသောအချိန်ကိုပြသနိုင်ရန်အတွက်မှန်ကန်သောအချိန်ဇုန်ကိုသတ်မှတ်ခြင်းသည်မရှိမဖြစ်လိုအပ်သည်။ Ini_set () function ကိုနှင့်အတူသင်အလွယ်တကူအချိန်ဇုန်ကို runtime မှာအလွယ်တကူသတ်မှတ်နိုင်ပါတယ်။ အထူးသဖြင့်အချိန်ဇုန်အသုံးပြုသူများအတွက်အချိန်ဇယားကိုသတ်မှတ်ခြင်းသည်အချိန်ဇုန်ကိုချိန်ညှိခြင်းအားဖြင့်အချိန်အမှားများကိုရှောင်ရှားနိုင်ပြီးအသုံးပြုသူများမြင်သည့်အချိန်ကိုအမြဲတမ်းတိကျမှန်ကန်စေသည်ကိုသေချာစေသည်။

အချိန်ဇုန် () ကို ini_set () ကိုအသုံးပြုခြင်းသည်အလွန်ရိုးရှင်းပါသည်။ သင်၏လျှောက်လွှာသည်အချိန်ဇုန်များစွာကိုကိုင်တွယ်ခြင်းပါ 0 င်ပါက,