finally අණ

finally කොටස භාවිතා කරන්නේ දෝෂ සැකසීම සඳහා try සහ catch ඉදිකිරීම් සමඟ ය. finally ඇතුළත කේතය ඕනෑම අවස්ථාවක ක්‍රියාත්මක වේ - try-කොටස සාර්ථකව ක්‍රියාත්මක වුවද සහ දෝෂයක් ඇති වුවද.

වාක්‍ය රීතිය

phptry {
  // දෝෂයක් ඇති කළ හැකි කේතය
} catch (Exception $e) {
  // දෝෂය සැකසීම
} finally {
  // ඕනෑම අවස්ථාවක ක්‍රියාත්මක වන කේතය
}

උදාහරණය

කේතය සාර්ථකව ක්‍රියාත්මක වීම සමඟ උදාහරණය:

php<?php
try {
  $res = 10 / 2;
  echo "ප්‍රතිඵලය: " . $res . "\n";
} catch (Exception $e) {
  echo "දෝෂය: " . $e->getMessage() . "\n";
} finally {
  echo "මෙය සැමවිටම ක්‍රියාත්මක වේ\n";
}
?>

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

phpප්‍රතිඵලය: 5
මෙය සැමවිටම ක්‍රියාත්මක වේ

උදාහරණය

දෝෂය සැකසීම සමඟ උදාහරණය:

php<?php
try {
  $res = 10 / 0;
  echo "ප්‍රතිඵලය: " . $res . "\n";
} catch (Exception $e) {
  echo "දෝෂය: " . $e->getMessage() . "\n";
} finally {
  echo "මෙය සැමවිටම ක්‍රියාත්මක වේ\n";
}
?>

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

phpදෝෂය: ශුන්‍යයෙන් බෙදීම
මෙය සැමවිටම ක්‍රියාත්මක වේ

උදාහරණය

සම්පත් මුදා හැරීම සඳහා finally භාවිතා කිරීම:

php<?php
$file = fopen("example.txt", "r");
try {
  // ගොනුව සමඟ වැඩ
  if ($file) {
    echo "ගොනුව සාර්ථකව විවෘත කරන ලදී\n";
  }
} catch (Exception $e) {
  echo "දෝෂය: " . $e->getMessage() . "\n";
} finally {
  if ($file) {
    fclose($file);
    echo "finally කොටසෙහි ගොනුව වසා දමන ලදී\n";
  }
}
?>

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

phpගොනුව සාර්ථකව විවෘත කරන ලදී
finally කොටසෙහි ගොනුව වසා දමන ලදී

මෙයද බලන්න

  • try ඉදිකිරීම,
    එය දෝෂ සැකසීම සඳහා භාවිතා කරයි
  • Exception වර්ගය,
    එය සියලුම දෝෂ සඳහා මූලික වර්ගය වේ