类中的常量使用const定义后,其访问方式和静态成员类似,都是通过类名或在成员方法中使用self访问,但在PHP 5.3.0之后也可以使用对象来访问。被const定义的常量不能重新赋值,如果在程序中试图改变它的值将会出现错误。
<?php
class demo{
const constant = 'const';
/*****成员方法*****/
function showConstant() {
echo self::constant . "\n";
}
}
/********通过类名访问*******/
echo demo::constant . "\n";
$classname = "MyClass";
echo $classname::constant . "\n"; // 自 5.3.0 起
/********通过成员方法中使用self访问*******/
$class = new demo();
$class->showConstant();
echo $class::constant."\n"; // 自 PHP 5.3.0 起
?>
这是我所理解的,但是用对象访问是如何访问的呢?new一个对象,然后通过成员方法中使用self方法访问?