bkdotcom/PHPDebugConsole

View on GitHub
src/CurlHttpMessage/HandlerStack.php

Summary

Maintainability
A
0 mins
Test Coverage
A
98%

Define and throw a dedicated exception instead of using a generic one.
Open

        throw new RuntimeException('Middleware not found: ' . $name);

If you throw a general exception type, such as ErrorException, RuntimeException, or Exception in a library or framework, it forces consumers to catch all exceptions, including unknown exceptions that they do not know how to handle.

Instead, either throw a subtype that already exists in the Standard PHP Library, or create your own type that derives from Exception.

Noncompliant Code Example

throw new Exception();  // Noncompliant

Compliant Solution

throw new InvalidArgumentException();
// or
throw new UnexpectedValueException();

See

Define and throw a dedicated exception instead of using a generic one.
Open

            throw new RuntimeException('Middleware already in stack: ' . $name);

If you throw a general exception type, such as ErrorException, RuntimeException, or Exception in a library or framework, it forces consumers to catch all exceptions, including unknown exceptions that they do not know how to handle.

Instead, either throw a subtype that already exists in the Standard PHP Library, or create your own type that derives from Exception.

Noncompliant Code Example

throw new Exception();  // Noncompliant

Compliant Solution

throw new InvalidArgumentException();
// or
throw new UnexpectedValueException();

See

Rename "$stackCallable" which has the same name as the field declared at line 25.
Open

        $stackCallable = $this->stackCallable();

Shadowing fields with a local variable is a bad practice that reduces code readability: it makes it confusing to know whether the field or the variable is being used.

Noncompliant Code Example

class Foo {
  public $myField;

  public function doSomething() {
    $myField = 0;
    ...
  }
}

See

There are no issues that match your filters.

Category
Status