Empty statements, i.e. ;
, are usually introduced by mistake, for example because:
- It was meant to be replaced by an actual statement, but this was forgotten.
- There was a typo which lead the semicolon to be doubled, i.e.
;;
.
Noncompliant Code Example
function doSomething() {
; // Noncompliant - was used as a kind of TODO marker
}
function doSomethingElse($p) {
echo $p;; // Noncompliant - double ;
}
for ($i = 1; $i <= 10; doSomething($i), $i++); // Noncompliant - Rarely, they are used on purpose as the body of a loop. It is a bad practice to have side-effects outside of the loop body
Compliant Solution
function doSomething() {}
function doSomethingElse($p) {
echo $p;
for ($i = 1; $i <= 10; $i++) {
doSomething($i);
}
}