PHP Development တွင် Debugging Code သည်ကျွန်ုပ်တို့၏နေ့စဉ်အလုပ်၏မလွှဲမရှောင်သာအစိတ်အပိုင်းတစ်ခုဖြစ်သည်။ Debugging လုပ်သည့်အခါလက်ရှိသတ်မှတ်ထားသောကိန်းနှင့်၎င်းတို့၏တန်ဖိုးများကိုသိရန်အလွန်အထောက်အကူပြုသည်။ PHP သည်အလွန်လက်တွေ့ကျသောလုပ်ဆောင်မှုကို Get_Defined_constants () သည်သတ်မှတ်ထားသောကိန်းဂဏန်းများပါ 0 င်သောအပေါင်းအသင်းများရှိသည့် activitive ခင်းကျင်းမှုကိုပြန်ပေးနိုင်သည်။ ဤလုပ်ဆောင်မှုမှတစ်ဆင့်ကျွန်ုပ်တို့သည်ပြ problems နာများကိုလျင်မြန်စွာရှာဖွေရန်ကူညီရန်အရေးကြီးသောကိန်းဂဏန်းများကိုအလိုအလျောက်မီးမောင်းထိုးပြသည့် debug function ကိုရေးနိုင်ပါသည်။
Get_Defined_constants () သည် PHP တွင်ပါ 0 င်သည့် function တစ်ခုဖြစ်သည်။ ၎င်း၏ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
array get_defined_constants(bool $categorize = false)
အကယ်. Parameter $ အမျိုးအစားကို မှားယွင်းစွာ သတ်မှတ်ထားပါကအမြဲတမ်းနာမည်နှင့်သက်ဆိုင်ရာတန်ဖိုးပါ 0 င်သောပြားချပ်ချပ်ခင်းကျင်းမှုကိုပြန်ပို့သည်။
အကယ်. Parameter $ ခွဲခြားသတ်မှတ်ထား ပါ က classification ခင်းကျင်းမှုကိုပြန်လည်ပေးပို့ခြင်း,
ဥပမာအားဖြင့်:
$constants = get_defined_constants();
print_r($constants);
ဤကုဒ်သည်သတ်မှတ်ထားသောကိန်းဂဏန်းများအားလုံးကိုလက်ရှိ script တွင်ဖော်ပြလိမ့်မည်။
Developer များသည်အရေးကြီးသောကိန်းဂဏန်းများကိုမီးမောင်းထိုးပြခြင်းဖြင့်ပြ problems နာများကိုလျင်မြန်စွာရှာဖွေရန်နှင့်ပြ problems နာများကိုလျင်မြန်စွာရှာဖွေရန်နှင့်ပြ problems နာများကိုဆန်းစစ်ရန်ကူညီရန် Get_Defined_Contants () function ကိုသုံးနိုင်သည်။ ပထမ ဦး စွာကျွန်ုပ်တို့သည်ကိန်းဂဏန်းများစာရင်းကိုသတ်မှတ်ပြီး၎င်းစာရင်းတွင်အရေးကြီးသည့်ကိန်းသားများကိုထည့်သွင်းနိုင်သည်။ ထို့နောက်ကျွန်ုပ်တို့သည်လက်ရှိ script ရှိ Contactants အားလုံးပါ 0 င်ရန်နှင့်ဤကိန်းဂဏန်းများကိုမီးမောင်းထိုးပြရန်ကျွန်ုပ်တို့၏စဉ်ဆက်မပြတ်စာရင်းနှင့်နှိုင်းယှဉ်လျှင် Get_Defined_constants () ကိုအသုံးပြုသည်။
ဤလုပ်ဆောင်မှုကိုအကောင်အထည်ဖော်ရန်ဥပမာတစ်ခုမှာဤတွင်ဖြစ်သည်။
<?php
// ကိန်းဂဏန်းများစာရင်းကိုသတ်မှတ်ပါ
$important_constants = [
'DEBUG_MODE',
'ERROR_LOG_PATH',
'DB_HOST',
'DB_USER',
'DB_PASSWORD'
];
// debugging လုပ်ဆောင်ချက်များကိုရေးသားခြင်း
function highlight_constants($important_constants) {
// လက်ရှိသတ်မှတ်ထားသောကိန်းဂဏန်းများအားလုံးကိုရယူပါ
$constants = get_defined_constants(true);
// output ကိုသတ်မှတ်ပါHTMLပမာဏ
echo "<table border='1' cellpadding='5' cellspacing='0'>";
echo "<tr><th>စဉ်ဆက်မပြတ်အမည်</th><th>စဉ်ဆက်မပြတ်တန်ဖိုး</th></tr>";
// ကိန်းရှင်များအပေါ်တွင်ကြုံတွေ့ရပြီးသူတို့ကိုမီးမောင်းထိုးပြပါ
foreach ($constants['user'] as $name => $value) {
$highlight = in_array($name, $important_constants) ? "style='background-color: yellow;'" : "";
echo "<tr $highlight><td>$name</td><td>$value</td></tr>";
}
echo "</table>";
}
// debugging လုပ်ဆောင်ချက်များကိုခေါ်ဆိုခြင်း
highlight_constants($important_constants);
?>
စဉ်ဆက်မပြတ်စာရင်း - ကျွန်ုပ်တို့သည်အရေးကြီးသောစဉ်ဆက်မပြတ်အမည်များပါ 0 င်သော array တစ်ခုအတွက် array arronstants ကိုသတ်မှတ်သည်။ ဤရွေ့ကားကိန်းဂဏန်းများ debug_mode , error_log_path စသကဲ့သို့ debugging စဉ်အတွင်းအထူးစိုးရိမ်ပူပန်မှုဖြစ်နိုင်သည်။
Constants ကိုရယူပါ ။ လက်ရှိသတ်မှတ်ထားသောသတ်မှတ်ထားသောကိန်းများအားလုံးကိုရယူရန် Get_Defines_constants (True) ကို သုံးပါ။ Get_Defined_constants (True) သည် conse -defined constants ကိုကိုယ်စားပြုသော core နှင့် Zend ခလုတ်များသည် PHP core နှင့် Zend Engine ၏အဓိကအားဖြင့်ကိုယ်စားပြုကြောင်းခွဲခြားထားသည့်အတန်းတွင်းနက်ကိုပြန်လည်စီစဉ်ထားကြောင်းသတိပြုပါ။
Exput-HTML Table - လွယ်ကူသောကြည့်ရှုခြင်းအတွက်ကျွန်ုပ်တို့သည် HTML table form ဖြစ်သည်။ Constants အတွက် quignants array ရှိ Constants အတွက်, သူတို့က style = 'background-color: အဝါရောင်; ။
Debug function ခေါ်ဆိုမှုများ - နောက်ဆုံးတွင်ကျွန်ုပ်တို့သည် Highlight_Comants ($ acception_constants) function ကိုခေါ်ဆိုခြင်း,
အဝါရောင်နောက်ခံရှိစဉ်ဆက်မပြတ်ကိန်းဂဏန်းများအပြင်အခြား CSS styyles များကိုလည်းခွဲခြားထားသည့်အတိုင်းခွဲခြားရန်အခြား CSS styyles များကိုလည်းအသုံးပြုနိုင်သည်။
font အရောင်ပြောင်းပါ
border ထည့်ပါ
Bold သို့မဟုတ်စာလုံးစောင်းကိုသုံးပါ
ECHO output ကို ECHO output ကိုချိန်ညှိပါ။ ဥပမာအားဖြင့်, ဖောင့်အရောင်ကိုအနီရောင်သို့ပြောင်းပါ။
$highlight = in_array($name, $important_constants) ? "style='color: red;'" : "";
Get_Defined_constants () function ကိုအသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်လက်ရှိ script တွင်ဖော်ပြထားသည့်ကိန်းဂဏန်းများကိုလျင်မြန်စွာရယူနိုင်ပါသည်။ ထုံးစံအတိုင်း debugging functions များနှင့်ပေါင်းစပ်လျှင်ကျွန်ုပ်တို့သည်ပြ problems နာများကိုပိုမိုလျင်မြန်စွာရှာဖွေတွေ့ရှိရန်အတွက်အရေးအကြီးဆုံးသောကိန်းရှင်ကိုကျွန်ုပ်တို့အလေးထားနိုင်သည်။ ဤနည်းလမ်းသည်အထူးသဖြင့်ဖွံ့ဖြိုးတိုးတက်မှုသို့မဟုတ်စမ်းသပ်ခြင်းအတွက်သင့်လျော်ပြီး debugging ထိရောက်မှုကိုများစွာတိုးတက်စေနိုင်သည်။