Вызов статического метода из переменной массива объекта

В PHP вы можете вызывать статический метод класса из экземпляра объекта (который содержится в массиве) следующим образом:

$myArray['instanceOfMyClass']::staticMethod(); // works

Но по какой-то причине, когда я использую$this переменная, я получаю ошибку разбора. Например:

$this->myArray['instanceOfMyClass']::staticMethod(); // PARSING ERROR

Просто чтобы проиллюстрировать, что я имею в виду:

class MyClass{
    public static function staticMethod(){ echo "staticMethod called\n"; }
}

$myArray = array();
$myArray['instanceOfMyClass'] = new MyClass;
$myArray['instanceOfMyClass']::staticMethod(); // works

class RunCode
{
    private $myArray;

    public function __construct(){
        $this->myArray = array();
        $this->myArray['instanceOfMyClass'] = new MyClass;
        $this->myArray['instanceOfMyClass']::staticMethod(); // PARSING ERROR
    }
}

new RunCode;

Есть идеи как обойти это?

Ответы на вопрос(3)

Ваш ответ на вопрос