1.2.301. Could Use Try¶
Some commands may raise exceptions. It is recommended to use the try/catch block to intercept those exceptions, and process them.
/ :
DivisionByZeroError
% :
DivisionByZeroError
intdiv() :
DivisionByZeroError
,ArithmeticError
<< :
ArithmeticError
>> :
ArithmeticError
Phar\:\:mungserver
:PharException
Phar\:\:webphar
:PharException
Some exceptions have an extra analysis, due to special detection condition : ParseError
, with eval() and DivisionByZeroError
.
<?php
function division(int $a, int $b) {
// This expression might generate a DivisionByZeroError, and require a try/catch for error handling purposes.
return $a / $b;
}
?>
See also Predefined Exceptions and PharException.
1.2.301.1. Connex PHP features¶
1.2.301.1.1. Suggestions¶
Add a try/catch clause around those commands
Add a check on the values used with those operator : for example, check a dividend is not 0, or a bitshift is not negative
1.2.301.1.2. Specs¶
Short name |
Exceptions/CouldUseTry |
Rulesets |
|
Exakat since |
1.5.0 |
PHP Version |
All |
Severity |
Minor |
Time To Fix |
Quick (30 mins) |
Precision |
High |
Examples |
|
Related rule |
|
Available in |