Dowiedz się, czy metoda istnieje w klasie statycznej

Chcę sprawdzić, czy w bibliotece, którą tworzę, istnieje funkcja, która jest statyczna. Widziałem funkcję i method_exists, ale nie znalazłem sposobu, który pozwoliłby mi wywołać je we względnym kontekście. Oto lepszy przykład:

class myClass{
    function test1()
    {
        if(method_exists("myClass", "test1"))
        {
            echo "Hi";
        }
    }
    function test2()
    {
        if(method_exists($this, "test2"))
        {
            echo "Hi";
        }
    }
    function test3()
    {
        if(method_exists(self, "test3"))
        {
            echo "Hi";
        }
    }
}
// Echos Hi
myClass::test1();
// Trys to use 'self' as a string instead of a constant
myClass::test3();
// Echos Hi
$obj = new myClass;
$obj->test2();

Muszę być w stanie wykonać echo 3 testu Hi, jeśli funkcja istnieje, bez konieczności wyciągania go ze statycznego kontekstu. Jako słowo kluczowe do uzyskania dostępu do klasy należy podać „self”, ponieważ $ to przypisane klasy.

questionAnswers(3)

yourAnswerToTheQuestion