Статические методы и свойства прмнадлежат классу, а не объекту проще всего будет объяснить на примере свойств
class Foo {
static public $a = 0;
public $b = 0;
public function getA(){
return self::$a;
}
}
$Foo1 = new Foo;
$Foo2 = new Foo;
Значение свойства "b" принадлежит объекту
$Foo1 -> b = 1;
echo $Foo2 -> b; // Выведет 0
Статическое свойство "а" принадлежит классу и доступно любому объекту класса
Foo::$a = 15;
echo $Foo1 -> getA(); // 15
echo $Foo2 -> getA(); // 15