The rescue
function can be used to attempt execution of an operation that has the potential to throw an exception. The rescue
function will allow you to specify a default value, through the $rescue
parameter that will be returned if the operation fails.
The rescue
helper function will log invoke the report
helper function on the inner exception if the operation fails.
#Signature
The signature of the rescue
function is:
1function rescue(
2 callable $callback,
3 $rescue = null
4);
#Example Use
The following examples are equivalent:
1$value = rescue(function () {
2 throw new Exception('This will always fail');
3}, function () {
4 return 'Hello, Universe';
5});
Using try/catch Control Structure
1$value = '';
2
3try {
4 throw new Exception('This will always fail');
5} catch (Exception $e) {
6 report($e);
7
8 $value = 'Hello, Universe';
9}
After both code examples have executed, the value of $value
would be Hello, Universe
. In the first example, you will notice that we are able to supply a callback as the default value when calling rescue
; this is because the default value is evaluated using the value
helper function before it is returned.
∎