Why you should care
When a variable without any operators is found within a 'IF' condition, in most of cases, it means that the developer wanted to perform some controls on this variable. However, in order to avoid any unexpected behavior during the execution, and depending on the verification type the developer intends to perform (existing/set or empty or true/false or null variable?), it is recommended to use the appropriate method, so that the risk of misinterpretation of the verification is limited.Business Impacts
It is recommended to use an explicit method to verify conditions of your variables, in order to avoid misinterpretation and possible bugs.CAST Recommendations
CAST recommends checking your variables with the appropriate method, depending on your specific case (e.g. isset() to check the variable exists, empty(), is_null, etc.) in order to avoid any misinterpretation of the verification (boolean, empty, exist).References
https://stackoverflow.com/questions/6693876/how-exactly-does-ifvariable-work https://stackoverflow.com/questions/30191521/php-check-if-variable-is-undefinedHow we detect
This Code Insight counts one occurrence each time a variable is found in a codition, without any operator. Example: if($_GET['myvariable']) { ... } if($foo) { ... }About CAST and Highlight’s Code Insights
Over the last 25 years, CAST has leveraged unique knowledge on software quality measurement by analyzing thousands of applications and billions of lines of code. Based on this experience and community standards on programming best practices, Highlight implements hundreds of code insights across 15+ technologies to calculate health factors of a software.
For reference only. For the complete details please refer the original article
https://doc.casthighlight.com/alt_variabledefinitioncheck/
https://doc.casthighlight.com/alt_variabledefinitioncheck/
Comments