【发布时间】:2012-07-25 19:48:34
【问题描述】:
class A{
const FOO = 1;
}
class B extends A{
const FOO = 5;
function foo(){
print self::FOO;
print static::FOO;
}
}
$b = new B;
$b->foo();
在这两种情况下都会打印 5。
那么在常量上使用 static 和 self 没有区别吗?
【问题讨论】:
-
我收到
Parse error: syntax error, unexpected T_STATIC。你有错误报告吗? -
@WesleyMurch 显然使用
static作为范围仅适用于 PHP 5.3 及更高版本。你有低版本的PHP吗?这可能是错误的根源。 -
我在codepad.org上运行它,看起来他们的版本是5.2
标签: php class static constants