## Why is this an issue?

To reference the current class instance the keyword $this can be used. Through the use of this keyword you have access to class properties and methods.

Static methods can be accessed without instantiating the class, so `$this` is not available for them. Using `$this` in a static context will result in a runtime error.

## How to fix it

### Code examples

#### Noncompliant code example

    class Clazz {
      public $name = NULL;  // instance variable

      public static function foo() {
        if ($this->name != NULL) {
          // ...
        }
      }
    }

#### Compliant solution

    class Clazz {
      public $name = NULL;  // instance variable

      public static function foo($nameParam) {
        if ($nameParam != NULL) {
          // ...
        }
      }
    }

## Resources

### Documentation

- PHP Manual - Classes and Objects Basics