Насколько я понимаю, статика распределяется между объектами одного типа:
class test{
static function print_test(){
print "hello!";
}
}
$objectA = new test();
$objectB = new test();
Функция print_test будет «разделена» между двумя объектами. Но подвох в том, что функция print_test () не должна ссылаться на что-либо внутри класса! даже если PHP 5 принимает его.
Так как функция print_test в примере просто печатает "привет!" и ничего не ссылается внутри класса, зачем выделять для него память в $ objectA и $ objectB? Просто сделайте одну статическую функцию, и $ objectA и $ objectB должны автоматически указывать на нее.
Что ж, это теория, лежащая в основе этого в других языках, но поскольку php5 позволяет ссылаться на $ this в статической функции, я не верю, что это истинная статическая функция, поскольку она должна быть динамической, чтобы получить какие-либо свойства для ( $ this-> variable ) этот уникальный объект.