Unused parameters are misleading. Whatever the value passed to such parameters is, the behavior will be the same. == Noncompliant Code Example ---- function doSomething($a, $b) { // "$a" is unused return compute($b); } ---- == Compliant Solution ---- function doSomething($b) { return compute($b); } ---- == Exceptions Functions in classes that override a class or implement interfaces are ignored. ---- class C extends B { function doSomething($a, $b) { // no issue reported on $b compute($a); } } ---- include::../see.adoc[]