Если вы ищете причины, по которым статические методы являются плохими, первое, что вы обнаружите, это потому, что вы не можете переопределить его, когда вы тестируете устройство.
Итак, это все еще верно, учитывая, что в PHP 5.3 вы можете делать все, что хотите, с введением static::
?
Добавить
http://sebastian-bergmann.de/archives/883-Stubbing-and-Mocking-Static-Methods.html
Обратите внимание, что он объясняет, как использовать синглтон без какой-либо проблемы с тестированием: