နိဒါန်း
ဖွံ့ဖြိုးရေးစဉ်အတွင်းအမှားအယွင်းများနှင့်ခြွင်းချက်များကြုံတွေ့ရခြင်းသည်မလွှဲမရှောင်သာဖြစ်သည်။ PHP developer များအနေဖြင့်အမှားအယွင်းများနှင့်ခြွင်းချက်များကိုကိုင်တွယ်ခြင်းနှင့်ခြွင်းချက်များသည်ကုဒ်တည်ငြိမ်မှုနှင့်ယုံကြည်စိတ်ချရမှုကိုသေချာစေရန်အရေးကြီးသောခြေလှမ်းတစ်ခုဖြစ်သည်။ ဤဆောင်းပါးသည် PHP တွင်အမှားအယွင်းများနှင့်ခြွင်းချက်များကိုမည်သို့ကိုင်တွယ်ဖြေရှင်းနိုင်ရန်နှင့်ကိုင်တွယ်ဖြေရှင်းရန်နှင့်ကိုင်တွယ်ဖြေရှင်းနိုင်ရန်နှင့်သတင်းအချက်အလက်များကိုဖြည့်ဆည်းပေးနိုင်သည်။
1 ။ အမှားအယွင်းများနှင့်ခြွင်းချက်များမိတ်ဆက်ခြင်း
PHP တွင်အမှားအယွင်းများနှင့်ခြွင်းချက်နှစ်ခုကွဲပြားခြားနားသောအယူအဆများဖြစ်သည်။ အမှားအယွင်းများသည်များသောအားဖြင့် php စကားပုံများသို့မဟုတ်စနစ်များကြောင့်ဖြစ်လေ့ရှိသည်။ ဤပြ problems နာများပေါ်ပေါက်လာသောအခါ PHP သည်သက်ဆိုင်ရာအမှားသို့မဟုတ်ခြွင်းချက်ကိုင်တွယ်ရန်ကြိုးစားသည်။
2 ။ အမှားကိုင်တွယ်
အမှားအစီရင်ခံစာအဆင့်
PHP သည်မတူညီသောအမှားအယွင်းများကိုတင်ပြရန်ကွဲပြားခြားနားသောအမှားများကိုထောက်ပံ့ပေးသည်။ ဘုံအမှားအစီရင်ခံစာအဆင့်:
- E_ERROR: Excription ကိုသေဒဏ်ချမှတ်ရန် Script ကိုဖြစ်ပေါ်စေသည်။
- E_Warning: သတိပေးချက်အမှား, ဇာတ်ညွှန်းပျက်ပြားလိမ့်မည်မဟုတ်ပေ။
- E_NOTICE: ပုံမှန်မတူသော variable ကိုမတူသော variable ကိုစသည်တို့ကဲ့သို့ပုံမှန် prompt ကို
- E_ALL: အမှားအယွင်းများ, သတိပေးချက်များနှင့်အချက်ပြချက်များကိုပြသည်။
အမှားအဆင့်ကိုသတ်မှတ်ရန် Error_reporting () function ကိုသုံးပါ။ Code pegager ်ဌာန်းချက်မှာအောက်ပါအတိုင်းဖြစ်သည် -
<?php
// အမှားအားလုံးကိုပြပါ、သတိပေးချက်နှင့်ချက်ချင်းသတင်းအချက်အလက်
error_reporting(E_ALL);
?>
Custom အမှားကိုင်တွယ်erler
PHP တွင်, default ကိုင်တွယ်သည့်နည်းလမ်းအစားအမှားကိုင်တွယ်သူများကိုစိတ်ကြိုက်ပြုလုပ်နိုင်သည်။ `set_error_handler ()` function ပါသော Custom error difficing function ကိုသတ်မှတ်ပါ။ အောက်ပါနမူနာကုဒ်ဖြစ်သည်။
<?php
// Custom Error ကိုကိုင်တွယ်ဖြေရှင်းခြင်း
function customError($errno, $errstr, $errfile, $errline) {
echo "<b> ချို့ယွင်းချက် - [$ errno] $ err ည့်ခန်း - $ errfile: $ မှားမှား ";
}
// Custom error set_error_handler ("CustomError") ကိုသတ်မှတ်ပါ။
>
ဤနည်းအားဖြင့်သင်သည်သစ်ထုတ်လုပ်ခြင်းသို့မဟုတ်အီးမေးလ်သတိပေးချက်များစသည့်အမှားအယွင်းများနှင့်အမှားအယွင်းများကို အခြေခံ. ကွဲပြားခြားနားသောအပြောင်းအလဲနဲ့ယုတ္တိဗေဒကိုလုပ်ဆောင်နိုင်သည်။
3 ။ ခြွင်းချက်ကိုင်တွယ်
ခြွင်းချက်ပစ်
PHP တွင်ခြွင်းချက်များကိုပစ်ရန် `phot's string ကိုသုံးနိုင်သည်။ PHP built-in ခြွင်းချက်အတန်းအစားကိုသင်ပစ်ချနိုင်သည်သို့မဟုတ်သင်ခြွင်းချက်အတန်းအစားကိုစိတ်ကြိုက်ပြုလုပ်နိုင်သည်။ ဤတွင်ချွင်းချက်ချရန်အတွက်နမူနာကုဒ်ဖြစ်သည်။
<?php
// သတ်မှတ်ထားသောခြွင်းချက်တစ်ခုပစ်
throw new Exception("Something went wrong.");
// ခြွင်းချက်လူတန်းစားကိုစိတ်ကြိုက်ပြင်ဆင်ပါ
class CustomException extends Exception {
public function __construct($message, $code = 0, Throwable $previous = null) {
parent::__construct($message, $code, $previous);
}
}
throw new CustomException("Custom error occurred.");
?>
ခြွင်းချက်များ
PHP တွင်သင်သည် `stret ... catch` catch` catch's` `` `` `` `` `` `` `` catch's statement ကိုသုံးနိုင်သည်။ code block တွင်ဖြစ်ပေါ်နိုင်သည့် code block တွင်ပါ 0 င်နိုင်သည့် code ကိုလုပ်ပါ။ ဥပမာများမှာအောက်ပါအတိုင်းဖြစ်သည် -
<?php
try {
// ခြွင်းချက်ပစ်စေနိုင်သော code ကို execute
throw new Exception("Something went wrong.");
} catch (Exception $e) {
// ခြွင်းချက်ကိုင်တွယ်
echo "Caught exception: " . $e-> GetMessage ();
}
>
Catch Code block တွင်သင်ဟာ GetMessage Object ၏နည်းဥပဒေ ()) မှတစ်ဆင့်အဖြေမှန်သတင်းအချက်အလက်များကိုအသေးစိတ်ဖော်ပြနိုင်သည်။
PUTCHUSSUSS
PHP သည်ကွဲပြားသောခြွင်းချက်အမျိုးအစားများကိုဖမ်းရန် `catch` code လုပ်ကွက်များအသုံးပြုခြင်းကိုထောက်ပံ့သည်။ ဥပမာများမှာအောက်ပါအတိုင်းဖြစ်သည် -
<?php
try {
throw new Exception("Something went wrong.");
} catch (CustomException $e) {
// Custom ခြွင်းချက်ကိုင်တွယ်ပါ
echo "Caught custom exception: " . $e-> GetMessage ();
} ဖမ်းမိခြင်း (ခြွင်းချက် $ င) {
// အခြားခြွင်းချက် ECHO "အခြားခြွင်းချက်ပဲ့တင်သံ" ကိုကိုင်တွယ် $ e-> gettessage ();
}
>
ဤကုဒ်တွင်အမျိုးအစား customexception ယူမှုကိုချွင်းချက်ချမှတ်လျှင်ပရိုဂရမ်သည်ပထမဆုံး ဖမ်း ကုဒ်ပိတ်ပင်တားဆီးမှုကိုရိုက်ထည့်ပါလိမ့်မည်။ အကယ်. ၎င်းသည်အခြားအမျိုးအစားများ မှလွဲ. ပရိုဂရမ်သည်ဒုတိယ catch code ပိတ်ပင်တားဆီးမှုကိုရိုက်ထည့်ပါလိမ့်မည်။
4 ။ အမှားအတွက်အကောင်းဆုံးအလေ့အကျင့်များနှင့်ခြွင်းချက်ကိုင်တွယ်
- အမှားအယွင်းများကိုဖွင့်ပါ။ ဖွံ့ဖြိုးတိုးတက်မှုပတ်ဝန်းကျင်တွင်အမှားအယွင်းများနှင့်သတိပေးချက်များကိုအချိန်မီအလားအလာရှိသောပြ problems နာများကိုဖြေရှင်းရန်နှင့်ဖြေရှင်းရန်ပြောင်းလဲခြင်းပြုလုပ်သင့်သည်။ ထုတ်လုပ်မှုပတ် 0 န်းကျင်များတွင် `error_reporting (e_All & ~ n_notice)` setting လုပ်ခြင်းဖြင့်ရရှိနိုင်ပါသည်။
- Custom error error handlers များကို အသုံးပြု. စိတ်အာရုံအမှားကိုင်တွယ်သူများကပိုမိုကောင်းမွန်သောလမ်းကြောင်းမှန်ပေါ်ရေးဆွဲခြင်းနှင့်မှတ်တမ်းအမှားများကိုကူညီနိုင်သည်။
- အဓိပ္ပာယ်ပြည့်ဝသောခြွင်းချက်များကိုပစ်ချခြင်း - အချို့သောပြ problems နာများသည်ကြိုတင်မြင်နိုင်သောအခါချွင်းချက်များ၏ရင်းမြစ်အကြောင်းရင်းကိုဖော်ပြရန်နှင့်ခြွင်းချက်များကိုဖမ်းယူသည့်အခါသင့်လျော်သောကိုင်တွယ်မှုများပြုလုပ်ရန်အတွက်သင့်လျော်သောကိုင်တွယ်သည့်နည်းလမ်းများကိုဖယ်ရှားပေးရန်အတွက်အဓိပ္ပာယ်ပြည့်ဝသောခြွင်းချက်အတန်းများကိုပစ်ချပါ။
နိဂုံးချုပ်အားဖြင့်
ချို့ယွင်းချက်နှင့်ခြွင်းချက်ကိုင်တွယ်ခြင်းသည် PHP ဖွံ့ဖြိုးတိုးတက်မှု၏အဓိကအစိတ်အပိုင်းများဖြစ်သည်။ ဆင်ခြင်တုံတရားကိုဆင်ခြင်တုံတရားအားဖြင့်ပုံသဏ္ဌာန်နှင့်စိတ်ကြိုက်အမှားကိုင်တွယ်သူများကိုအသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်အမှားအယွင်းများကိုပိုမိုထိရောက်စွာစီမံခန့်ခွဲနိုင်သည်။ တစ်ချိန်တည်းမှာပင်ခြွင်းချက်မှန်မှန်ကန်ကန်ပစ်ခြင်းနှင့်ဖမ်းယူခြင်းအားဖြင့်ပြ Proble နာများပေါ်ပေါက်လာသောအခါပရိုဂရမ်သည်ရှင်းလင်းပြတ်သားသောအမှားအချက်အလက်များကိုပေးနိုင်ရန်သေချာသည်။ ဤဆောင်းပါးတွင်ဖော်ပြထားသောအကောင်းဆုံးအလေ့အကျင့်များသည် PHP Development တွင်အမှားအယွင်းများနှင့်ချွင်းချက်ကိုင်တွယ်ခြင်းများကိုပိုမိုကောင်းမွန်စွာကိုင်တွယ်ဖြေရှင်းနိုင်ရန်မျှော်လင့်ပါသည်။