web-dev-qa-db-fra.com

Pourquoi PHP ne permet-il pas la const privé?

J'ai une classe qui bénéficie de l'utilisation de constantes dans son implémentation interne, mais je voudrais limiter la visibilité de ces constantes. Pourquoi PHP n'autorise-t-il pas les constantes privées? Existe-t-il un autre moyen d'y parvenir ou PHP essaie-t-il de décourager certains types de faux pas de conception que j'ignore?)

69
leo

Utilisation private static Propriétés.

Dans ce cas, vous aurez la même variable dans tous les objets et si vous souhaitez étendre sa portée à imbriqué, vous pouvez exposer une méthode getter pour obtenir sa valeur et restreindre les paramètres des variables.

58
sudhir chauhan

Depuis PHP 7.1, il existe de vraies constantes privées.

private const PRIVATE_CONST = 0;

Voir le Class Constant Visibility RFC pour plus d'informations.

62
Jeroen De Dauw