Exception handling in an application is very important and is available in almost all current programming languages. In the PHP language, the native Exception class handles any errors that may occur at run time in a certain code. With it is possible to identify and deal with contingencies related to a source code implemented incorrectly or database access errors, for example, not allowing any of them to appear without proper treatment to the end user.
Understanding how the Exception class behaves with an application developed in PHP can help in many situations, especially in solving problems related to programming itself. Therefore, following we present a synopsis, in order to be used as a basis for inspection and knowledge:
Exception {
/* Attributes */
protected string $message ;
private string $string ;
protected int $code ;
protected string $file ;
protected int $line ;
private array $trace ;
/* Methods */
public __construct ([ string $message = NULL [, int $code ]] )
final public string getMessage ( void )
final public int getCode ( void )
final public string getFile ( void )
final public string getLine ( void )
final public array getTrace ( void )
final public string getTraceAsString ( void )
public string __toString ( void )
final private string __clone ( void )
}
Attributes
- Message: The exception message;
- String: Exception internal name;
- Code: The exception code;
- File: The file name where the exception was thrown;
- Line: The line where the exception was thrown;
- Trace: Exception stack trace.
Methods
- Exception::__construct— Exception Builder
- Exception::getMessage— Gets the Exception message
- Exception::getCode— Gets the Exception code
- Exception::getFile— Gets the file in which the exception occurred
- Exception::getLine— Gets the line in which the exception occurred
- Exception::getTrace— Gets the stack trace
- Exception::getTraceAsString— Gets the stack trace as a string
- Exception::__toString— Representation exception of string
- Exception::__clone— Clones the Exception
The exception is captured using the structure try catch:
try {
//code
} catch (Exception $e) {
echo $e->getMessage(), “n”;
}
In the first part of the structure is implemented the source code to be validated, it will be tested and if there is any error in implementing, the Exception class will trigger an error message to be displayed through the method getMessage().
It is possible that, besides using the exception savailable in the language, to use also customized exceptions as can be seen in the example below:
<?php
function inverse($x) {
if (!$x) {
throw new Exception(‘Division by zero.’);
}
return 1/$x;
}
try {
echo inverse(5) . “n”;
echo inverse(0) . “n”;
} catch (Exception $e) {
echo ‘Exception caught: ‘, $e->getMessage(), “n”;
}
// Continuous execution
echo “Hello worldn”;
?>
In the example, a custom error message is returned, using the class constructor itself. For that exception to be captured and displayed, it is necessary again to use the structure try catch.
Check out more content on our blog!
Learn all about Scriptcase.
You might also like…