throw විධානය

throw විධානය PHP හි අසාමාන්යතාවක් පැහැදිලිව විසි කිරීම සඳහා භාවිතා වේ. එය පරාමිතියක් ලබා ගනී - අසාමාන්යතා වස්තුවක්, එය Exception මූලික වර්ගයෙන් උරුම කර ගත් වර්ගයක අවස්ථාවක් විය යුතුය. මෙම ශ්‍රිතය කැඳවන විට වත්මන් කේතය ක්‍රියාත්මක කිරීම ඉක්මනින් නතර වේ, සහ PHP අසාමාන්යතාව හසුරවා ගැනීම සඳහා අනුරූපී catch කොටස සෙවීමට උත්සාහ කරයි.

වාක්‍ය රචනය

phpthrow new ExceptionClass(message, code, previous);

උදාහරණය

අසාමාන්යතාවක් උත්පාදනය කිරීමේ සරල උදාහරණයක්:

php<?php
  $age = -5;
  if ($age < 0) {
    throw new Exception('වයස සෘණාත්මක විය නොහැක');
  }
?>

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

phpFatal error: Uncaught Exception: වයස සෘණාත්මක විය නොහැක

උදාහරණය

අසාමාන්යතාව හසුරවා ගැනීම සමඟ උදාහරණය:

php<?php
  try {
    $res = 10 / 0;
    if (is_infinite($res)) {
      throw new Exception('ශුන්‍යයෙන් බෙදීම');
    }
  } catch (Exception $e) {
    echo 'දෝෂය: ' . $e->getMessage();
  }
?>

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

php'දෝෂය: ශුන්‍යයෙන් බෙදීම'

උදාහරණය

පරිශීලක අර්ථ දක්වන අසාමාන්යතාවක් භාවිතා කිරීම:

php<?php
  class MyCustomException extends Exception {}
  
  try {
    throw new MyCustomException('අභිරුචි දෝෂ පණිවුඩය');
  } catch (MyCustomException $e) {
    echo 'අභිරුචි දෝෂය හසු විය: ' . $e->getMessage();
  }
?>

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

php'අභිරුචි දෝෂය හසු විය: අභිරුචි දෝෂ පණිවුඩය'

මෙයද බලන්න

  • try ව්‍යුහය,
    එය අසාමාන්යතා හසුරවා ගැනීම සඳහා කේත කොටසක් නිර්වචනය කරයි
  • catch ව්‍යුහය,
    එය අසාමාන්යතා අතහැර හසුරවා ගනී
  • Exception වර්ගය,
    එය සියලුම අසාමාන්යතා සඳහා මූලික වර්ගය වේ