php 类的恒定可见性

2022-08-30 15:54:49

我们可以设置类常量的可见性吗?
对于此示例:

class MyClass {
    const CONST_VALUE = 'A constant value';
}

我们可以指定

public const CONST_VALUE = 'A constant value';

private const CONST_VALUE = 'A constant value';

protected const CONST_VALUE = 'A constant value';

答案 1

更新:PHP 7.1(2016 年 12 月 1 日发布)中添加了常量的可见性修饰符。请参阅 RFC :支持类常量可见性

语法如下所示:

class ClassName {
    private const PRIVATE_CONST = 0;
    protected const PROTECTED_CONST = 0;
    public const PUBLIC_CONST = 0;
}

答案 2

PHP7.1 开始,类常量允许使用可见性修饰符,在以前的版本中,无法在类中设置常量的可见性。它们始终是公开的。有关详细信息,请参阅 http://www.php.net/manual/en/language.oop5.constants.php 的评论。


推荐