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