News Feed

News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way
Exceptional Exceptions
November 16, 2012 @ 11:49:08

On today they have a new post from Remi Woler about "exceptional exceptions" - using exceptions to handle the flow of your application's execution a bit better.

Unlike errors, exceptions are designed to be handled by the calling code and will bubble up the execution chain until they are caught. Code in the current scope will stop executing as soon as an exception is thrown (so any lines after a throw statement won't be executed) and control is handed back to the first matching exception handler (either a catch block, configured exception handler, or language-provided exception handler). Only when an exception is caught will code execution continue from there. This article does not aim to teach you exceptions at a 101 level, but instead gives an opinion on how to use exceptions better

The post helps you determine the difference between an error and an exceptional event and gives examples of the sorts of things he considers exceptions useful for. He also talks about throwing different kinds of exceptions to make their context more meaningful, but notes that this has been known to cause trouble if used too much.

In summary, only throw exceptions when your code cannot complete the requested instruction with the given input, always throw a custom exception that actually tells the calling code what the situation is, and if you call other code then only catch the exceptions that you can and should handle.
0 comments voice your opinion now!
exception tutorial cases custom error catchall

blog comments powered by Disqus

Similar Posts Implementing a Unit of Work - Handling Domain Objects through a Transactional Model Can You Hack Your Own Site? A Look at Some Essential Security Considerations

Ruslan Yakushev's Blog: Multiple PHP versions on the same IIS server PHP Security

NorthClick Blog: Tips for creating a small but solid newsletter-system

Community Events

Don't see your event here?
Let us know!

opinion list symfony yii2 composer api programming framework laravel php7 podcast community language part2 application project introduction interview series example

All content copyright, 2015 :: - Powered by the Solar PHP Framework