Вопросы о функциях STATIC возвращаются.
Статические функции по определению не могут и не зависят от каких-либо свойств экземпляра класса. То есть они не требуют выполнения экземпляра класса (и поэтому могут быть выполнены.
В некотором смысле это означает, что функция не зависит (и никогда не будет нуждаться) от членов или методов (открытых или закрытых) класса.
class Example {
// property declaration
public $value = "The text in the property";
// method declaration
public function displayValue() {
echo $this->value;
}
static function displayText() {
echo "The text from the static function";
}
}
$instance = new Example();
$instance->displayValue();
$instance->displayText();
// Example::displayValue(); // Direct call to a non static function not allowed
Example::displayText();