2011-12-20 81 views
2

就像在C++中一样,可以在构造函数中初始化类常量吗?在构造函数中初始化类常量在PHP中

到C++类似它会看起来像:

class Abc 
{ 
    const WIDTH; 

    public __constructor($width):WIDTH($width) //WIDTH gets assigned here and is immutable 
    { 
     //I know syntax may not be ok but is anything similar possible in PHP? 
    } 

} 

回答

5

不,这是不可能的PHP。定义常量时必须定义一个常量值,并且它必须是一个常量表达式。

不推荐:当然,如果安装runkit,您可以使用runkit_constant_add()

public function __construct($width) 
{ 
    runkit_constant_add(__CLASS__ . '::WIDTH', $width); 
}