我习惯使用new
关键字,所以我很惊讶地发现以下内容也适用于实例化。
class MyClass
{
const CONSTANT = 'constant value';
function showConstant() {
echo self::CONSTANT;
}
}
// $classname = new MyClass;
$classname = "MyClass";
echo $classname::CONSTANT;
我似乎无法在线找到与此相关的任何文档。有人会帮助我吗?
答案 0 :(得分:0)
从PHP 5.3.0开始,可以使用变量引用该类[0]
您没有创建对象的实例。所以你没有实例化一个类。 PHP常量可以静态访问。
答案 1 :(得分:0)
这不是一个实例化,在这种情况下你可以使用四个点(::)来访问一个静态变量,方法或常量。
答案 2 :(得分:0)
事实上,$classname
只是说MyClass
的另一种方式。因此$classname::CONSTANT
与MyClass::CONSTANT
相同。但是没有实例化,因为$classname->showConstant()
不起作用!!