PHP ООП - Статические свойства
PHP - Статические свойства
Статические свойства могут быть вызваны напрямую - без создания экземпляра класса.
Статические свойства объявляются с помощью ключевого слова static
:
Синтаксис
<?php
class ClassName {
public static $staticProp = "W3Schools";
}
?>
Для доступа к статическому свойству используйте имя класса, двойное двоеточие (::) и имя свойства:
Синтаксис
ClassName::staticProp();
Давайте посмотрим на пример:
Пример
<?php
class
pi {
public static $value = 3.14159;
}
// Получить статическое свойство
echo pi::$value;
?>
Попробуйте сами »
Объяснение примера
Здесь мы объявляем статическое свойство: $value. Затем мы отображаем значение статического свойства, используя имя класса, двойное двоеточие (::) и имя свойства (без предварительного создания класса).
PHP - Подробнее о статических свойствах
Класс может иметь как статические, так и нестатические свойства. Доступ к статическому свойству можно получить из метода того же класса, используя ключевое слово self
и двойное двоеточие (::):
Пример
<?php
class
pi {
public static $value=3.14159;
public function
staticValue() {
return self::$value;
}
}
$pi = new pi();
echo $pi->staticValue();
?>
Попробуйте сами »
Чтобы вызвать статическое свойство из дочернего класса, используйте ключевое слово parent
внутри дочернего класса:
Пример
<?php
class
pi {
public static $value=3.14159;
}
class x extends pi {
public function xStatic() {
return
parent::$value;
}
}
// Получить значение статического свойства напрямую через дочерний класс
echo x::$value;
// или получить значение статического свойства с помощью метода xStatic()
$x = new x();
echo $x->xStatic();
?>
Попробуйте сами »