如何在PHP中使用常量使变量私有化

3

在PHP中,变量是否可以同时被设置为私有和常量?

我想将变量设置为私有,以便该变量无法在类外部访问,并且还想将变量设置为常量,因为我不希望在类外部使用类名来访问常量变量。

请有经验的人给我建议。谢谢。

3个回答

6
首先,你的PHP变量可以使用相应的关键字设置为私有、公共或受保护状态。
其次,你的PHP类常量无法设置为除了public之外的其他作用域。因此,以下两种语法都是无效的:public const A和private const A。你只能在类内部使用const A。
如果你想使你的常量成为私有的,你应该如下声明你的静态成员:
class A
{
   private static $a;
}

这个类成员可以像常量一样通过A::$a进行调用,但是你仍然可以修改它的值。


0

在这种情况下,使用私有静态属性,您将在所有对象中拥有相同的变量,如果您想将其范围扩展到嵌套,则可以公开getter方法以获取其值并限制变量设置。


0

常量永远不能是private的。它们只能是public的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接