Я объяснял разработчику Java, почему его вызов метода не работает. Ему просто нужно было добавить $this->method_name();
Затем он спросил меня: "Зачем мне добавлять $ this в метод, когда он объявлен в том же классе?"
Я действительно не знал, как ответить. Может быть, это потому, что у PHP есть глобальное пространство имен, и вам нужно явно сказать ему, что метод, который вы ищете, принадлежит текущему классу? Но тогда почему PHP не проверяет текущий класс для метода ДО проверки глобального пространства имен?