finally कमांड
finally ब्लॉक का उपयोग अपवादों को संभालने के लिए try और catch संरचनाओं के साथ किया जाता है। finally के अंदर का कोड किसी भी स्थिति में निष्पादित होगा - चाहे try-ब्लॉक सफलतापूर्वक निष्पादित हुआ हो या अपवाद उत्पन्न हुआ हो।
वाक्य-विन्यास
try {
// कोड जो अपवाद पैदा कर सकता है
} catch (Exception $e) {
// अपवाद का प्रसंस्करण
} finally {
// कोड जो किसी भी स्थिति में निष्पादित होगा
}
उदाहरण
कोड के सफल निष्पादन के साथ उदाहरण:
<?php
try {
$res = 10 / 2;
echo "Result: " . $res . "\n";
} catch (Exception $e) {
echo "Exception: " . $e->getMessage() . "\n";
} finally {
echo "This will always execute\n";
}
?>
कोड निष्पादन का परिणाम:
Result: 5
This will always execute
उदाहरण
अपवाद प्रसंस्करण के साथ उदाहरण:
<?php
try {
$res = 10 / 0;
echo "Result: " . $res . "\n";
} catch (Exception $e) {
echo "Exception: " . $e->getMessage() . "\n";
} finally {
echo "This will always execute\n";
}
?>
कोड निष्पादन का परिणाम:
Exception: Division by zero
This will always execute
उदाहरण
संसाधनों को मुक्त करने के लिए finally का उपयोग:
<?php
$file = fopen("example.txt", "r");
try {
// फ़ाइल के साथ कार्य
if ($file) {
echo "File opened successfully\n";
}
} catch (Exception $e) {
echo "Exception: " . $e->getMessage() . "\n";
} finally {
if ($file) {
fclose($file);
echo "File closed in finally block\n";
}
}
?>
कोड निष्पादन का परिणाम:
File opened successfully
File closed in finally block