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[]
