Вызов частного метода из статического метода - PullRequest
1 голос
/ 02 февраля 2012

У меня есть класс Error, который имеет открытый статический метод db_log_error () и закрытый метод _log ().

db_log_error () вызывает метод _log ().

Когда я пытаюсь $this->_log(), я получаю PHP Fatal error: Using $this when not in object context

Когда я пытаюсь self::_log(), я получаю PHP Strict Standards: Non-static method Error::log() should not be called statically

Так каков наилучший подход к тому, что я пытаюсь сделать?

Ответы [ 2 ]

1 голос
/ 02 февраля 2012

Сделайте метод log также статическим, если его нужно вызывать из статического контекста.

1 голос
/ 02 февраля 2012

Самое идеальное решение: сделать метод _log() статическим.

Или отключить строгие стандарты:

error_reporting(E_ALL ^ E_STRICT);
...