Définition des variables de classe publique
Comment définir une variable publique. Est-ce correct?:
class Testclass
{
public $testvar = "default value";
function dosomething()
{
echo $this->testvar;
}
}
$Testclass = new Testclass();
$Testclass->testvar = "another value";
$Testclass->dosomething();
source d'informationauteur Cudos
Vous devez vous connecter pour publier un commentaire.
ceci est le chemin, mais je vous propose d'écrire un getter et setter pour cette variable.
Utiliser Des Constructeurs.
Pour surcharger vous auriez besoin d'une sous-classe:
Ce code écho de
newVal
.Vous êtes "réglage" la valeur de la variable ou de l'attribut. Pas de la substitution ou de la surcharge. Votre code est très, très fréquent et normal.
L'ensemble de ces conditions ("set", "ignorer", "surcharge") ont des significations spécifiques. Remplacer et de Surcharge sont sur le polymorphisme (sous-classement).
De http://en.wikipedia.org/wiki/Object-oriented_programming :
Si vous allez suivre les exemples donnés (à l'aide de getter/setter ou un paramètre dans le constructeur) changer en privé car ce sont des moyens de contrôler ce qui est mis dans la variable.
Ça n'a pas de sens de garder le public de la propriété avec toutes ces choses ajoutées à la classe.
Ajouter le getter et le setter de la méthode de votre classe.
À l'intérieur de
class Testclass
: