PHP 5.5 has implemented finally
to try-catch
. My doubt is: when exactly try-catch-finally
that might be more helpful than just I write below try-catch
?
Example, difference between:
try { something(); }
catch(Exception $e) { other(); }
finally { another(); }
Instead of, just:
try { something(); }
catch(Exception $e) { other(); }
another();
Can send me some example that is common to this case?
Notes:
try-catch-finally
, and not about try-finally
, only;finally
;notcatch
? So I can run a code if try
goes without an exception. heheThe code within the finally
block is always executed after leaving from either try
or catch
blocks. Of course you may continue writing code after the try-catch and it will be executed as well. But finally could be useful when you'd like to break out of code execution (such as returning from a function, breaking out of a loop etc.). You can find some examples on this page - http://us2.php.net/exceptions, such as:
function example() {
try {
// open sql connection
// Do regular work
// Some error may happen here, raise exception
}
catch (Exception $e){
return 0;
// But still close sql connection
}
finally {
//close the sql connection
//this will be executed even if you return early in catch!
}
}
But yes, you are right; finally
is not very popular in everyday use. Certainly not as much as try-catch alone.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With