Treci la conținutul principal

PHP - Proprietăți statice

Cuvântul cheie static creează și proprietăți statice.

Poți citi o proprietate statică direct, fără să creezi vreodată un obiect din clasa ei.


Declararea unei proprietăți statice

Declari o proprietate statică adăugându-i cuvântul cheie static:

Sintaxa declarării unei proprietăți statice

static se scrie înaintea numelui proprietății:

index.php
<?php
class ClassName {
  public static $statProp = "PromptCookbook";
}
?>

Accesarea unei proprietăți statice

Citirea unei proprietăți statice are trei părți: numele clasei, două puncte duble (::) și numele proprietății.

Exemplul următor declară o proprietate statică numită $value și o afișează direct cu echo, în această formă. Nu este nevoie de niciun obiect:

Exemplu

Citește o proprietate statică prin numele clasei ei:

Prompt
Creează o clasă PHP numită pi cu o proprietate statică publică $value setată la 3.14159. Afișează proprietatea statică direct, folosind numele clasei.
Ieșire: script PHP

Sintaxa accesării unei proprietăți statice

Forma generală pentru a ajunge la o proprietate statică:

index.php
<?php
ClassName::$statProp;
?>

PHP - Mai multe despre proprietățile statice

Proprietățile statice și cele nestatice pot exista în aceeași clasă. O metodă a acelei clase ajunge la o proprietate statică scriind self și două puncte duble (::) înaintea numelui proprietății:

Exemplu

O metodă citește o proprietate statică a propriei clase prin self:

Prompt
Creează o clasă PHP numită pi cu o proprietate statică publică $value setată la 3.14159 și cu o metodă staticValue() care returnează proprietatea statică folosind cuvântul cheie self. Creează o instanță și afișează rezultatul.
Ieșire: script PHP

Exemplu

Într-o clasă copil, ajungi la proprietatea statică a părintelui cu ajutorul cuvântului cheie parent. Exemplul o citește și direct, prin numele clasei copil:

Prompt
Creează o clasă PHP pi cu o proprietate statică publică $value setată la 3.14159. Creează o clasă copil x care are o metodă xStatic() ce returnează proprietatea statică a părintelui. Afișează valoarea atât direct, cât și prin intermediul metodei.
Ieșire: script PHP