လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP7.4 အဆင့်မြှင့်တင်ခြင်းတွင်လိုက်ဖက်တဲ့ပြ issues နာများကိုဖြေရှင်းနိုင်ခြင်း - သာမန်အမှားများနှင့်ဖြေရှင်းနည်းများ

PHP7.4 အဆင့်မြှင့်တင်ခြင်းတွင်လိုက်ဖက်တဲ့ပြ issues နာများကိုဖြေရှင်းနိုင်ခြင်း - သာမန်အမှားများနှင့်ဖြေရှင်းနည်းများ

gitbox 2025-06-29

Php7.4 ဆိုတာဘာလဲ

PHPP3.4 သည် PHP ဘာသာစကား၏အရေးကြီးသောဗားရှင်းဖြစ်ပြီး 2019 နို 0 င်ဘာလတွင်ဖြန့်ချိခဲ့သည်။ PHP7.3 နို 0 င်ဘာလတွင်ထုတ်ပြန်ခဲ့သည်။

PHP7.4 အဆင့်မြှင့်တင်မှုများနှင့်အတူဖြစ်နိုင်သမျှလိုက်ဖက်တဲ့ပြ issues နာများ

PHP7.4 ကိုအဆင့်မြှင့်တင်သောအခါသင်ဟာလိုက်ဖက်တဲ့ပြ issues နာအချို့ကိုသင်ကြုံတွေ့ရလိမ့်မည်။ ဤပြ problems နာများသည်များသောအားဖြင့် PhP7.4 တွင်မိတ်ဆက်ပေးသောအင်္ဂါရပ်များနှင့်ကုဒ်အပြောင်းအလဲများကြောင့်ဖြစ်သည်။ ဤတွင်အချို့သောဘုံလိုက်ဖက်တဲ့ပြ issues နာများရှိပါသည်။

အဆိုပါ function ကိုစနစ်တကျအလုပ်မလုပ်ပါဘူး

အချို့သောလုပ်ဆောင်ချက်များကို PHP7.4 သို့မဟုတ်ပြောင်းလဲထားသော parameter အမျိုးအစားများဖြင့်ဖျက်ပစ်နိုင်သည်။ အောက်ပါဥပမာသည်ဤပြ problem နာကိုပြသသည်။

 <span class="fun">foo (int $ bar) {// ... } foo (&#39;ဘား) function function function; // PHP သတိပေးချက် - Stropos () သည် parameter 1 ကို string တစ်ခုဖြစ်ရန်မျှော်လင့်သည်</span>

ဖြေရှင်းနည်းမှာ function's parameter type type ကြေငြာချက်ကိုအသစ်ပြောင်းရန်ဖြစ်သည်။ ဥပမာအားဖြင့်, သမဂ္ဂအမျိုးအစားကို parameters အမျိုးမျိုးကိုခွင့်ပြုရန်အသုံးပြုနိုင်သည်။

 <span class="fun">foo function function function (string ကို | int $ bar) {// ... } foo (bar &#39;); // ok foo (42); // အိုကေ</span>

မှော်စဉ်ဆက်မပြတ်မမှန်ကန်ပါ

PHPP3.4 တွင် __LINE__, __CLAST____ ကဲ့သို့သောမှော်အသရေခွံများနှင့် __file__ ကို registry အကောက်ခွန်အကောင်အထည်ဖော်မှုကြောင့် ____File__ ကိုမှားယွင်းစွာဖော်ပြနိုင်သည်။ ဥပမာအားဖြင့်:

 <span class="fun">echo __file__; PHP7.4: // PHP7.4 ပြီးနောက် - //path/toTo/File.php //</span>

ဖြေရှင်းနည်းသည် __FILE__ အစား __DIR__ သို့မဟုတ် dirname (__ file__) ကိုအသုံးပြုရန်ဖြစ်သည်။

namespace ပြ issues နာများ

PHP7.4 တွင် namespace သည်အတန်းအစားအမည်နှင့်အတူတူပင်ဖြစ်လျှင်ခွဲခြမ်းစိတ်ဖြာခြင်းအမှားများဖြစ်ပေါ်နိုင်သည်။ ဥပမာအားဖြင့်:

 <span class="fun">namespace foo; Class Bar {// ... } function bar () {// ... })</span>

PHP7.4 တွင် function bar () ကိုခေါ်သည့်အခါ backslash (\) ကိုအသုံးပြုရန်မလိုအပ်ပါ။ သို့သော် Php5.x တွင်သင် backslash ကိုအသုံးပြုရန်လိုအပ်သည်။

port နံပါတ်ကိုနံပါတ်သို့ခွဲခြမ်းစိတ်ဖြာသည်

PHPP7.4 တွင် URL ကို function တစ်ခုအနေဖြင့်ဖြတ်သန်းသွားပါက port နံပါတ်ကို null အဖြစ်ခွဲခြမ်းစိတ်ဖြာနိုင်သည်။ ဥပမာအားဖြင့်:

 <span class="fun">$ url = &#39;https://www.example.com:80/&#39;; $ parts1 = parse_url ($ URL); Print_r ($ အစိတ်အပိုင်းများ); PHP7.4 မတိုင်မီ // array (scheme] => https [host] => www.exampe.com [port] =>> https => https]</span>

ဖြေရှင်းနည်းမှာ port နံပါတ်ကိုကိန်းဂဏန်းတစ်ခုသို့ပြောင်းလဲရန်သို့မဟုတ်၎င်းကိုစတုရန်းကွင်းခတ်ထားရန်ဖြစ်သည်။

php7.4 ၏လိုက်ဖက်တဲ့ပြ issue နာကိုဘယ်လိုဖြေရှင်းမလဲ

Developer များ PHP7.4 တွင်သဟဇာတကိစ္စများကိုလျင်မြန်စွာပြုပြင်ရန်ကူညီရန်ထိရောက်သောဖြေရှင်းနည်းများကိုဤတွင်ဖော်ပြထားသည်။

Code ကိုပြန်လည်သုံးသပ်ခြင်းနှင့်စမ်းသပ်ခြင်း

PHP7.4 ကိုအဆင့်မြှင့်တင်ခြင်းမပြုမီ code သည်ဗားရှင်းအသစ်တွင် 0 င်ရောက်လုပ်ကိုင်ရန်သေချာစေရန်ပြည့်စုံသောကုဒ်ပြန်လည်သုံးသပ်ခြင်းနှင့်စစ်ဆေးမှုများပြုလုပ်ရန်အကြံပြုသည်။ အလားအလာရှိသောအမှားများကိုယူနစ်စစ်ဆေးခြင်း, ပေါင်းစည်းခြင်းစစ်ဆေးခြင်းနှင့်စွမ်းဆောင်ရည်စစ်ဆေးခြင်းစသည့်နည်းလမ်းများဖြင့်ရှာဖွေတွေ့ရှိနိုင်သည်။

Update ကိုကုဒ်

သဟဇာတဖြစ်သော code အတွက် PHP7.4 ၏အင်္ဂါရပ်အသစ်များနှင့်ကိုက်ညီရန်ကုဒ်ကိုမွမ်းမံပါ။ ဥပမာအားဖြင့် PHP7.4 ကိုသုံးနိုင်သည်။

 <span class="fun">foo function function function (string ကို | int $ bar) {// ... } foo (bar &#39;); // ok foo (42); // အိုကေ</span>

လိုက်ဖက်တဲ့စာကြည့်တိုက်ကိုသုံးပါ

Code ကိုပြုပြင်ရန်အပြင်အဆင့်မြှင့်တင်မှုလုပ်ငန်းစဉ်အတွင်းကြုံတွေ့ရသောပြ problems နာများကိုဖြေရှင်းနိုင်ရန်အတွက်လိုက်လျောညီထွေစာကြည့်တိုက်ကိုလည်းသင်အသုံးပြုနိုင်သည်။ ဥပမာအားဖြင့်, သင်သည်သင်၏ကုဒ်တွင်ပုံစံရှိပုံစံများနှင့် format ချခြင်းဆိုင်ရာပြ issues နာများကိုအလိုအလျောက်ပြင်ဆင်ရန် PHP-CS-fixer ကိုသုံးနိုင်သည်။

နိဂုံးချုပ်အားဖြင့်

PHP7.4 ကိုအဆင့်မြှင့်တင်သည့်အခါသင်သည်အဓိကအားဖြင့်အင်္ဂါရပ်များနှင့်ကုဒ်အပြောင်းအလဲများကြောင့်ဖြစ်ရတဲ့လိုက်ဖက်တဲ့ပြ issues နာတွေကိုကြုံတွေ့ရနိုင်တယ်။ ဤပြ issues နာများကို code ပြန်လည်သုံးသပ်ခြင်း, စစ်ဆေးခြင်း, စစ်ဆေးခြင်း, မွမ်းမံခြင်းကုဒ်သို့မဟုတ် code update လုပ်ခြင်းကုဒ်များကို အသုံးပြု. ကုဒ်များသည်ဗားရှင်းအသစ်များတွင်ချောချောမွေ့မွေ့လည်ပတ်နိုင်စေရန်အတွက်စာကြည့်ရှုခြင်းဆိုင်ရာစာကြည့်တိုက်များအသုံးပြုခြင်းကိုဖြေရှင်းနိုင်သည်။