Exception အတန်း

Exception အတန်းသည် PHP ရှိ ခြွင်းချက်အားလုံးအတွက် အခြေခံအတန်း ကိုယ်စားပြုပါသည်။ ၎င်းတွင် ခြွင်းချက်များနှင့် လုပ်ဆောင်ရန် အခြေခံနည်းလမ်းများ ပါဝင်သည်- အမှားအကြောင်းကြားစာ ရယူခြင်း၊ အမှားကုဒ်၊ ခြွင်းချက်ဖြစ်ပေါ်ခဲ့သော ဖိုင်နှင့် စာကြောင်းနံပါတ်၊ ပြီးလျှင် ခေါ်ယူမှု စုပုံမှု။ ခြွင်းချက်တစ်ခု ဖန်တီးသောအခါ ကြားစာ၊ အမှားကုဒ်နှင့် ယခင်ခြွင်းချက်ကို ပေးပို့နိုင်ပါသည်။

ဝါကျဖွဲ့စည်းပုံ

phpnew Exception(string $message = "", int $code = 0, Throwable $previous = null);

ဥပမာ

ရိုးရှင်းသော ခြွင်းချက်တစ်ခုကို ဖန်တီးပြီး ကိုင်တွယ်ကြည့်ပါမည်-

php<?php
  try {
    throw new Exception('တစ်ခုခု မှားယွင်းနေပါသည်', 100);
  } catch (Exception $e) {
    echo 'အမှား- ' . $e->getMessage();
  }
?>

ကုဒ် လုပ်ဆောင်ချက် ရလဒ်-

php'အမှား- တစ်ခုခု မှားယွင်းနေပါသည်'

ဥပမာ

Exception အတန်း၏ အဓိက နည်းလမ်းများကို အသုံးပြုကြည့်ပါမည်-

php<?php
  try {
    throw new Exception('စမ်းသပ်ခြွင်းချက်', 123);
  } catch (Exception $e) {
    echo 'ကြားစာ- ' . $e->getMessage() . "\n";
    echo 'ကုဒ်- ' . $e->getCode() . "\n";
    echo 'ဖိုင်- ' . $e->getFile() . "\n";
    echo 'စာကြောင်း- ' . $e->getLine() . "\n";
  }
?>

ကုဒ် လုပ်ဆောင်ချက် ရလဒ် (ဥပမာ)-

php'ကြားစာ- စမ်းသပ်ခြွင်းချက်
ကုဒ်- 123
ဖိုင်- /path/to/file.php
စာကြောင်း- 3'

ဥပမာ

ခြွင်းချက်တစ်ခု ဖြစ်ပေါ်စဉ် ခေါ်ယူမှု စုပုံမှုကို ရယူကြည့်ပါမည်-

php<?php
  function test() {
    throw new Exception('စုပုံမှု ခြေရာခံ စမ်းသပ်မှု');
  }
  
  try {
    test();
  } catch (Exception $e) {
    print_r($e->getTrace());
  }
?>

ကုဒ် လုပ်ဆောင်ချက် ရလဒ် (ဥပမာ)-

php[
  [
    'file' => '/path/to/file.php',
    'line' => 5,
    'function' => 'test',
    'args' => []
  ]
]

ဆက်လက်လေ့လာရန်

  • အတန်း ErrorException,
    အမှားများကို ခြွင်းချက်အဖြစ် ကိုယ်စားပြုသော
  • set_exception_handler လုပ်ဆောင်ချက်,
    အသုံးပြုသူ သတ်မှတ်ထားသော ခြွင်းချက်ကိုင်တွယ်ရေးကိရိယာကို သတ်မှတ်ပေးသော