set_error_handler function

set_error_handler function သည် အသုံးပြုသူ စိတ်ကြိုက် အမှားကိုင်တွယ်ရေးစနစ်ကို သတ်မှတ်ပေးပါသည်။ ပထမသတ်မှတ်ချက်တွင် အမှားတစ်ခုဖြစ်ပေါ်လာသည့်အခါ ခေါ်ယူမည့် callback function တစ်ခုကို ပေးရပါမည်။ ဒုတိယအချက်မှာ မဖြစ်မနေသတ်မှတ်ရန် မလိုသော်လည်း ၎င်းကိုင်တွယ်ရေးစနစ်က မည်သည့်အမှားအမျိုးအစားများကို ဖမ်းယူရမည်ဆိုသည်ကို သတ်မှတ်နိုင်ပါသည်။

Syntax

phpset_error_handler(callable $error_handler, int $error_types = E_ALL | E_STRICT);

ဥပမာ

အသုံးပြုသူ စိတ်ကြိုက် အမှားကိုင်တွယ်ရေးစနစ် ရိုးရှင်းသော ဥပမာ -

php<?php
  function customError($errno, $errstr, $errfile, $errline) {
    echo "Error [$errno]: $errstr in $errfile on line $errline";
  }
  
  set_error_handler("customError");
  
  echo $undefinedVar;
?>

Code run ပြီးရရှိသော ရလဒ် -

phpError [8]: Undefined variable: undefinedVar in /path/to/file.php on line 7

ဥပမာ

သတ်မှတ်ထားသော အမှားအမျိုးအစားများကိုသာ ကိုင်တွယ်ခြင်း -

php<?php
  function warningHandler($errno, $errstr) {
    if ($errno === E_WARNING) {
      echo "Warning captured: $errstr";
    }
  }
  
  set_error_handler("warningHandler", E_WARNING);
  
  strpos(); // Warning တက်လာပါမည်
?>

Code run ပြီးရရှိသော ရလဒ် -

phpWarning captured: strpos() expects at least 2 parameters, 0 given

ဥပမာ

စံ အမှားကိုင်တွယ်ရေးစနစ်သို့ ပြန်သွားခြင်း -

php<?php
  set_error_handler(null); // စံ အမှားကိုင်တွယ်ရေးစနစ်သို့ ပြန်သွားခြင်း
?>