我在运行代码时收到错误Use of undefined constant NORMAL - assumed 'NORMAL'
,我发现代码没有错误
var $type;
const NORMAL=1;
const ADMIN=2;
public function getTypeOptions(){
return array(
self::NORMAL=>'Normal',
self::ADMIN=>'Administrator',
);
}
public function getTypeText(){
$options[NORMAL];
$options[ADMIN];
$options=$this->getTypeOptions();
return $options;
}
public function getTypeByText($type){
$options = $this->getTypeText();
if($type == 1){
return $options[1];
}else if($type == 2){
return $options[2];
}
}
每当我将getTypeByText方法调用type = 2
的值时,我都会得到这个答案 0 :(得分:2)
引用全局常量,需要引用局部常量。
$options[self::NORMAL];
$options[self::ADMIN];
应该有效
只是一个注释,看看你的类::方法的构建方式,你实际上并不需要上面这个,下面的工作就可以了。
public function getTypeText()
{
return $this->getTypeOptions();
}