PHP OOP - Propriétés Statique


PHP - Propriétés Statique

Les propriétés statiques peuvent être appelées directement, sans créer une instance d'une classe.

Les propriétés statiques sont déclarées avec le mot-clé static :

Syntaxe

<?php
class ClassName {
public static $staticProp = "formation-ti.org";
}
?>

Pour accéder à une propriété statique, utilisez le nom de la classe, deux points (::) et le nom de la propriété :

Syntaxe

ClassName::$staticProp;

Regardons un exemple :

Exemple

<?php
class pi {
public static $value = 3.14159;
}

// Obtenir la propriété statique
echo pi::$value;
?>
Essayez-le vous-même »

Exemple Expliqué

Ici, nous déclarons une propriété statique : $value. Ensuite, nous affichons la valeur de cette propriété statique en utilisant le nom de la classe, deux points (::) et le nom de la propriété (sans créer d'abord une instance de la classe).



PHP - Plus sur les Propriétés Statique

Une classe peut avoir à la fois des propriétés statiques et non-statiques. Une propriété statique peut être accédée depuis une méthode de la même classe en utilisant le mot-clé self et deux points (::) :

Exemple

<?php
class pi {
public static $value=3.14159;
public function staticValue() {
return self::$value;
}
}

$pi = new pi();
echo $pi->staticValue();
?>
Essayez-le vous-même »

Pour appeler une propriété statique depuis une classe enfant, utilisez le mot-clé parent à l'intérieur de la classe enfant :

Exemple

<?php
class pi {
public static $value=3.14159;
}

class x extends pi {
public function xStatic() {
return parent::$value;
}
}

// Obtenir la valeur de la propriété statique directement via la classe enfant
echo x::$value;

// ou obtenir la valeur de la propriété statique via la méthode xStatic()
$x = new x();
echo $x->xStatic();
?>
Essayez-le vous-même »