在同一个抽象类定义中获取先前定义的常量值

时间:2015-10-15 17:45:31

标签: php const abstract-class

我试图创建一个可以节省一些字符串的抽象类。我希望每个常量都具有前一个常量的值和一些其他的常量。例如,像这样:

abstract class Test
{
    const a = "a",
            b = "ab",
            c = "abc";
}

我不想重复所有内容两次,所以当我想要更改a时,我需要在每个值中更改它。我希望它在下一个常量中使用前一个值,所以当我改变一些东西时,它将全部改变一个值。有可能吗?我试过了this::a,但它没有用,我无法想到其他任何方式。

1 个答案:

答案 0 :(得分:2)

Constant expression support was added in PHP 5.6

  

可以在类常量的上下文中提供涉及数字和字符串文字和/或常量的标量表达式。

这样,你可以这样做:

const a = "a",
      b = self::a . "b",
      c = self::a . "bc";

您可以使用const

访问班级内的self