Question

Si j'ai une classe de base contenant un VaR statique, j'ai ensuite défini ce Var Statique, puis une classe qui étendra la classe de base, la classe étendue conserve la valeur du VaR statique que j'ai déjà défini dansla classe de base?

Était-ce utile?

La solution

Yes, although they're different variables, the static variables in both classes are in the same reference set.

You can break this reference set though, by using reference assignment (=&) or by redeclaring it in the extended class:

class base {
    public static $var;
}
class extended extends base {}

extended::$var = 8; // base::$var == 8
$t = 6;
extended::$var =& $t; // base::$var == 8; extended::$var == 6

class base {
    public static $var;
}
class extended extends base {
    public static $var;
}

extended::$var = 8; // base::$var == null; extended::$var == 8
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top